Commit Graph

547 Commits

Author SHA1 Message Date
Norman Feske c7f1b85652 Retire libc_{log, block, fs, rom}
Those plugins are superseded by libc_vfs.

Issue #999
2014-04-29 15:25:39 +02:00
Norman Feske 8e74fdc585 vfs: inline file system 2014-04-29 15:19:27 +02:00
Norman Feske 959b26fee0 vfs: ROM file system 2014-04-29 15:19:27 +02:00
Norman Feske 83a03df6a4 vfs: LOG file system 2014-04-29 15:19:27 +02:00
Norman Feske c3c6a82d13 Move VFS from noux to 'os/include/vfs'
By separating the VFS from Noux, we become able to reuse the
VFS for libc-using programs. The most substantial change is the
removal of Noux::Sysio data structures from the VFS. Instead, the
Noux::Sysio refers to the VFS types now.

The new VFS library is located at 'os/include/vfs/'.

Furthermore, the patch removes various code duplications related
to pseudo file systems that provide a single file (block, zero,
random, terminal, null). The new 'Single_file_system' holds the
common boilerplate code for those.

Issue #999
2014-04-29 15:19:27 +02:00
Norman Feske d7d62c53a6 mixer: Increase stack size of entrypoint 2014-04-24 14:56:36 +02:00
Norman Feske 2b5f4b0aaf file system: Exception for non-permitted symlinks
Until now, there was not exception type for the condition where a
symlink was created on a file system w/o supporting symlinks, e.g., FAT.
The corresponding file-system server (ffat_fs) used to return a negative
handle as a work around. I added 'Permission_denied' to the list of
exceptions thrown by 'File_system::Session::symlink' to handle this case
in a clean way.
2014-04-24 14:56:36 +02:00
Norman Feske b43a5f1255 tar_fs: Return correct size of stat'ed dirs
Genode's file system interface returns the number of directories
multiplied by sizeof(Directory_entry) as size of a directory. The
tar_fs server used to return zero. The fix counts the sub nodes of
the given directory.
2014-04-24 14:56:36 +02:00
Norman Feske d83e076f11 terminal_session: Add label argument to connection 2014-04-24 14:56:36 +02:00
Stefan Kalkowski 4dd2db7634 use consistent scheme for chosen MAC addresses
Take a similar MAC address scheme within run scripts like
within the nic bridge to simplify DHCP configuration.
2014-04-22 14:48:33 +02:00
Alexander Boettcher 73f71322f0 init: put ep for child in affinity space of child
Issue #1107
2014-04-14 12:32:30 +02:00
Alexander Boettcher 1eb3f13484 pit: no lock required in pit anymore
timer service calls platform timer nowadays solely from the vary same thread
 - the entrypoint of the timer service

Issue #1106
2014-04-01 16:42:37 +02:00
Alexander Boettcher 7d232cafb0 timer: fix corner case if counter is 0
If counter drops to 0, the wrap flag is set also. That means we have actually
no wrap around. The patch avoids to add too much time to the elapsed time
variable.

Issue #1106
2014-04-01 16:42:37 +02:00
Alexander Boettcher 34a33e7301 timer: fix wrap handling for x86 PIT
Issue #1106
2014-04-01 16:42:37 +02:00
Alexander Boettcher a604ea6851 os: reprogram timer solely if needed
If an alarm/timeout object became head of the timeout queue, then the
low level timer must be reprogrammed.

Issue #1106
2014-04-01 16:42:37 +02:00
Norman Feske 2f3b67c9e0 nitpicker: Fix implementation of Mode interface
The generalization of nitpicker's graphic backend changed the interface
of 'Mode::forget', which is a (non-pure) virtual function implemented
by 'User_state::forget'. Unfortunately, the signature change was not
applied to 'User_state::forget' so that the actual implementation was
no longer called. This inconsistency remained unnoticed because there
is a default implementation of the virtual function.

The effect of the omission of the 'User_state::forget' call was a
dangling pointer ('User_state::_pointed_view').

Lesson learned: Always annotate functions with the C++11 'override' when
implementing virtual functions.
2014-04-01 16:37:40 +02:00
Christian Prochaska e6c7596af5 ldso: flush the log console in 'errx()'
The error message given to the 'errx()' function does not always contain a
'\n' character. Adding 'printf("\n")' ensures that the message appears on
the log console.

Fixes #1103.
2014-03-31 21:05:48 +02:00
Norman Feske a951a9f72f uart/exynos5: Add missing author 2014-03-18 16:29:37 +01:00
Norman Feske e285d806b3 uart/omap4: prevent copy of non-copyable objects
Follow up fix for commit 0b7ea4abab + minor whitespace changes.

Ref #1093
2014-03-18 14:33:59 +01:00
Stefan Kalkowski ba4045889b pandaboard: prevent copy of non-copyable objects
Follow up fix for commit 0b7ea4abab
Ref #1093
2014-03-18 14:24:55 +01:00
Christian Helmuth 8de324245c framebuffer.run: refresh screen after test step
The commit also refactors initialization and generic functions into a
test-environment class.

Fixes #1092.
2014-03-14 13:20:06 +01:00
Johannes Schlatow da9e764c47 Init: bugfix
Fix a use-after-free bug concerning the use case where the config
of the init process changes dynamically. The childs' services were not
removed from the corresponding Service_registry properly.

Fixes #1094
2014-03-14 13:17:37 +01:00
Norman Feske 6525ec5951 Simplify Framebuffer::Session interface
This patch removes the 'Framebuffer::Session::release()' function from
the interface to make the mode-change protocol consistent with the way
the Rom_session interface handles ROM-module changes. That is, the
client acknowledges the release of its current dataspace by requesting a
new dataspace via the 'Framebuffer::Session::dataspace()' function.

Fixes #1057
2014-03-14 13:17:35 +01:00
Martin Stein 6a3368ee27 hw_arndale: idle threads on secondary processors
fix #1006
2014-03-04 15:03:43 +01:00
Stefan Kalkowski 47179201a5 base-hw: reenable failsafe run script (Fix #801) 2014-03-03 13:01:39 +01:00
Sebastian Sumpf caad308a21 ldso: Export HW system call interface
Fixes #1081
2014-03-03 12:49:35 +01:00
Christian Helmuth 99a2511496 os: improve README for trace fs 2014-02-28 10:11:52 +01:00
Norman Feske aa1082bed7 dynamic_rom: Additional documentation 2014-02-28 10:11:51 +01:00
Norman Feske 0312bea38b dynamic_rom: Don't mention decorator
Omit the decorator.run script from the README file because it is not
integrated in mainline yet.
2014-02-28 10:11:51 +01:00
Norman Feske 4c45f3451c os/reporter.h: Don't enable if connection fails
If opening a report session fails (for example because of invalid
session arguments) and an exception is thrown during the session
construction, the report would wrongly keep the enabled state.
By moving the assignment of the state after the construction,
the report stays disabled as it should be.
2014-02-28 10:11:51 +01:00
Norman Feske 57fdce0465 nitpicker: Respond to session-local focus change
This patch improves the focus handling by updating the menubar each time
the user clicks on a different view, even the old and new view belong
to the same session.
2014-02-28 10:11:51 +01:00
Norman Feske 1498bb740b nitpicker: Parent-child relation between views
Fixes #1020
2014-02-28 10:11:50 +01:00
Josef Söntgen e90c77da89 os: increase ldso MEM_SIZE 2014-02-28 10:11:13 +01:00
Christian Prochaska 43c73eff13 Adapt GDB commands to ldso changes
Issue #1042.
2014-02-28 10:11:12 +01:00
Norman Feske 28c6763a7d lx_fs: Support large files on 32-bit machines 2014-02-28 10:11:11 +01:00
Alexander Boettcher 5d9b563503 framebuffer: fix ambiguity for strncpy 2014-02-28 10:11:10 +01:00
Stefan Kalkowski 3b69dc2a58 TrustZone: reenable memory protection (fix #1060) 2014-02-28 10:11:08 +01:00
Sebastian Sumpf 9251b1ede8 rump: Port of the rump kernels to Genode
For further information see: http://wiki.netbsd.org/rumpkernel/. In this version
I ported the central rump components to Genode in order to take advantage of
NetBSD file system implementation. The new 'dde_rump' repository contains the
Genode version of the rump libraries and a 'rump_fs' server that implements
Genode file-system-session interface. Currently ext2, iso9660, and fat
file-systems are supported.

Issue #1048
2014-02-28 10:11:08 +01:00
Sebastian Sumpf ce27985b8a ram_blk: Writable loopback device
Issue #1048
2014-02-25 14:58:09 +01:00
Sebastian Sumpf 1e8f1b7a5b ldso: Do not use new rom connection during open
Search for already opened file, also do not throw any exceptions, since they
may be thrown during execption allocation.
2014-02-25 14:58:08 +01:00
Martin Stein 016c3a8d9e test-ldso: test stack alignment
Issue #1042
2014-02-25 14:58:08 +01:00
Martin Stein 724efcb00c test-ldso: test ctors, dtors and atexit functions
Issue #1042
2014-02-25 14:58:08 +01:00
Martin Stein bd52e49698 os: remove startup lib from dynamic programs
All the pre- and post-processing of the startup lib around the main
function of a dynamic program is now done by LDSO. Hence LDSO directly
calls the main function of the program.

Issue #1042
2014-02-25 14:58:07 +01:00
Martin Stein 8d21064b5e ldso: use generic CRT0 files
Issue #1042
2014-02-25 14:58:07 +01:00
Martin Stein 324af5d769 os: make program ctors and dtors visible to LDSO
This is needed later when eliminating the need for a startup lib in
dynamic programs to enable LDSO to call ctors and dtors of the program.

Issue #1042
2014-02-25 14:58:07 +01:00
Martin Stein 6e2b7c2b92 ldso: make function get_program_var_addr global
This is needed later to lookup program symbols like ctors and dtors to
eliminate the need for a startup lib in dynamic programs.

Issue #1042
2014-02-25 14:58:07 +01:00
Martin Stein e45f929eca ldso: make cxx symbols global
Issue #1042
2014-02-25 14:58:07 +01:00
Martin Stein df066521a5 ldso: don't destruct Rm_area singleton in file.cc
This is needed to avoid access to invalid caps in forked noux programs.

ref #989
2014-02-25 14:58:07 +01:00
Stefan Kalkowski 6ca8a41232 core: lower default verbosity when quota exceeds
* only print quota exceeded message and statistic when explicitly enabled
* turn init's error message "cannot respond to request" into a warning
2014-02-25 14:58:06 +01:00
Stefan Kalkowski 30bfc63b63 block cache: quota to small for foc_x86_64 2014-02-25 14:58:06 +01:00