Commit Graph

2679 Commits

Author SHA1 Message Date
Christian Prochaska
148b8efe8e Adapt gallium and libdrm plugins to current libc
This patch adapts the gallium and libdrm libc plugins to the current
workings of the libc.

Fixes #1070.
2014-02-28 10:11:13 +01:00
Christian Prochaska
7fd53b52df gallium: link with pthread
Fixes #1069.
2014-02-28 10:11:13 +01:00
Sebastian Sumpf
1295d5e062 hw: Change link address for Panda
Don't load image at beginning of RAM, this may cause u-boot to show
unpredictable behavior.
2014-02-28 10:11:13 +01:00
Josef Söntgen
e90c77da89 os: increase ldso MEM_SIZE 2014-02-28 10:11:13 +01:00
Josef Söntgen
f407bc4cbb base: interim forked trace control fix
The destructor of the Area object uses invalid caps which results in
a wanted abort of the process on nova. This is mainly the case in forked
process in noux.
2014-02-28 10:11:13 +01:00
Martin Stein
e7f370f779 base: enable tracing not before reinit_main_thread
ref #989
2014-02-28 10:11:13 +01:00
Martin Stein
99ec536c53 thread: init thread cap for non-core main threads
ref #989
2014-02-28 10:11:13 +01:00
Stefan Kalkowski
379c6c1cd4 i.MX53: fix incorrect DMA protection settings
Within the central security unit of the i.MX53 SoC, one can set protection
level of various DMA bus master requests, distinguishing them between normal,
and secure access. Although, the access level was meant to be set correctly,
the enumeration values that denoted the kind of access were incorrect. Thereby,
until now every DMA requests was set as being secure. This commit corrects
the enumeration values, and sets all DMA operations as being unsecure, accept
from the graphical subsystem which is controlled by the secure world only.

Thanks to Andrea Barisani and Andrej Rosano from Inverse Path for discovering
this bug, as well as the hardware limitation!
2014-02-28 10:11:13 +01:00
Sebastian Sumpf
bf06b7e360 rump: Add repository to build.conf 2014-02-28 10:11:12 +01:00
Martin Stein
a7dd2b3171 base: ABI specific stack creation
ref #1042
2014-02-28 10:11:12 +01:00
Christian Prochaska
43c73eff13 Adapt GDB commands to ldso changes
Issue #1042.
2014-02-28 10:11:12 +01:00
Sebastian Sumpf
b4612d24ce base-linux: Repair hybrid programs
Do not link 'startup' and 'cxx' libraries against hybrid programs.
2014-02-28 10:11:12 +01:00
Alexander Boettcher
961bd41b05 vbox: auto test for win7 @ vbox/Genode/Nova
Issue #1055
2014-02-28 10:11:12 +01:00
Alexander Boettcher
d8c2a908b8 ports: add VirtualBox as VMM for Genode
Fixes #1055
2014-02-28 10:11:12 +01:00
Norman Feske
2e6f281cf0 libc_fs: Handle Packet_alloc_failed exception 2014-02-28 10:11:11 +01:00
Norman Feske
28c6763a7d lx_fs: Support large files on 32-bit machines 2014-02-28 10:11:11 +01:00
Alexander Boettcher
d1b0af5eb9 nova: nopcid required for thinkpad x201 2014-02-28 10:11:11 +01:00
Alexander Boettcher
737a3290d9 nova: for clearing a ds it must be ever writable 2014-02-28 10:11:11 +01:00
Alexander Boettcher
f69b206593 nova: fix utcb layout for 32bit
Makes virtualbox as 32bit VMM working
2014-02-28 10:11:11 +01:00
Alexander Boettcher
dd95266235 nova: add feature to yield a thread
used by virtualbox intensively
2014-02-28 10:11:11 +01:00
Alexander Boettcher
39a7ffd233 nova: use kernel branch with vCPU fpu support
branch r4 based on latest vanilla kernel of @udosteinberg
2014-02-28 10:11:11 +01:00
Alexander Boettcher
fa23c0bd4f nova: update syscall bindings 2014-02-28 10:11:11 +01:00
Alexander Boettcher
8c7cadde5f nova: support noreturn attribute for syscall reply 2014-02-28 10:11:10 +01:00
Alexander Boettcher
491817c00c base: add flex page iterator
Issue #8
2014-02-28 10:11:10 +01:00
Alexander Boettcher
fcd76d10dd pthread: catch time out exception 2014-02-28 10:11:10 +01:00
Christian Helmuth
a11a17147f pthread: limit timeouts to >= 10 ms
The timed semaphore supports a minimum timeout of 10 ms and logs a
warning if the timeout is lower than the minimum. To prevent the
warning, we limit timeouts to >= 10 ms.
2014-02-28 10:11:10 +01:00
Alexander Boettcher
5d9b563503 framebuffer: fix ambiguity for strncpy 2014-02-28 10:11:10 +01:00
Norman Feske
75366c66a4 libc: Add Libc::Mem_alloc::size_at
Adding this function eases the implementation of realloc based on
'Libc::Mem_alloc'. Note that this allocator is not used by libc's
default malloc implementation but it is useful for customized C
runtimes, e.g., for the runtime of VirtualBox.
2014-02-28 10:11:10 +01:00
Norman Feske
db2fe17269 base: Add Allocator_avl::size_at function
This function provides a way to request the size of an previously
allocated block. It is useful to to ease the implementation of realloc
functionality based on Allocator_avl.
2014-02-28 10:11:10 +01:00
Norman Feske
16bc2bc840 libc: Dummy for sys/user.h 2014-02-28 10:11:10 +01:00
Norman Feske
9a971a500d libc: Add sys/disk.h
Needed by the POSIX backend of the VirtualBox runtime.
2014-02-28 10:11:10 +01:00
Norman Feske
e02d643420 libc: export LIBC_REP_DIR in libc-common.inc
This information is useful if 'libc-common.inc' is included from
another repository, i.e., for building stripped-down libc variants
tailored to an individual application.
2014-02-28 10:11:09 +01:00
Sebastian Sumpf
4aef209c8b rump: Increase FS server stack size 2014-02-28 10:11:09 +01:00
Josef Söntgen
a282617407 libports: initial fuse_fs implementation
The fuse_fs server provides access to a FUSE based file system by using
a File_system_session.

Fixes #1058.
2014-02-28 10:11:09 +01:00
Josef Söntgen
829961b0ad libports: add libc_fuse_ntfs-3g
Fixes #1058.
2014-02-28 10:11:09 +01:00
Josef Söntgen
7998fdaf3f libports: less noisy compilation of libfuse
Out of laziness we only provide two dummy functions for all FUSE
operations, which are used in case the FUSE file system does not
implement them itself.

Fixes #1058.
2014-02-28 10:11:09 +01:00
Josef Söntgen
8f1e8c122f libports: less noisy libext2fs compilation
Fixes #1058.
2014-02-28 10:11:09 +01:00
Josef Söntgen
7bc49b05d0 libports: less noisy fuse_ext2 compilation
Fixes #1058.
2014-02-28 10:11:09 +01:00
Josef Söntgen
53c6675500 libports: prevent main symbol clash in fuse-ext2
Omit the main rountine in fuse-ext2.c. Otherwise using fuse-ext2 with
fuse_fs is not possible because the server framework already defines
a main routine.

Fixes #1058.
2014-02-28 10:11:09 +01:00
Josef Söntgen
9f5c13564c libports: extend FUSE implementation
* add sync method:
  Since file systems tend to have a inbuild caching mechansim we need to
  sync these caches at the end of session when using the fuse_fs server.
  Therefore each FUSE file system port has to implement a Fuse::sync_fs()
  function that executes the necessary actions if requested.

* add symlink check

* allow to check FUSE fs initialization
  This changes the private API of the FUSE implementation. The init_fs
  method now has to return true if the initialization was successful and
  otherwise false. All current users of the API are also changed
  accordingly.

Fixes #1058.
2014-02-28 10:11:09 +01:00
Stefan Kalkowski
3b69dc2a58 TrustZone: reenable memory protection (fix #1060) 2014-02-28 10:11:08 +01:00
Christian Prochaska
14a636f9a7 Noux: fix GDB arguments in run script
Noux generates 'argv[0]' for the initial child automatically (in contrast
to the 'config_args' library), so the first argument stated in the
configuration should not be the GDB program name.

Fixes #1062.
2014-02-28 10:11:08 +01:00
Christian Prochaska
46374a6932 gdb_monitor: show correct register state on FOC
On Genode/Fiasco.OC, when an unresolved page fault occurs, only the IP and
SP registers are valid in the thread state read by GDB monitor. This was
not taken into account so far and the other (possibly outdated) register
values got reported to the client, too.

With this patch, only IP and SP get reported to the client in the page
fault case.

Fixes #1063.
2014-02-28 10:11:08 +01:00
Sebastian Sumpf
dd974f00f7 usb_drv: Fix implicit declaration warnings
Issue #1050
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
2e04cc2d87 libc_fs: Implemented and test 'unlink' call
Issue #1048
2014-02-25 14:58:09 +01:00
Sebastian Sumpf
1b1693e6ff libc: 'readlink' returns non-zero terminated buffer
Make so to handle zero termination correctly for 'stat' calls and for debugging
output.

Issue #1048
2014-02-25 14:58:09 +01:00
Sebastian Sumpf
b7575319bf run: Add 'check_installed' command to run env
'check_installed' takes a command name as argument and tries to call 'which' in
order to find the command path. If that does not succeed, paths like '/sbin' are
'/usr/sbin' searched. On success the absolute path of the command is returned,
on failure 'exit' is called with an error message.

Issue #1048
2014-02-25 14:58:09 +01:00
Sebastian Sumpf
1c4c4d6961 base: Make 'LD_SCRIPT_SO' overwritable
Issue #1048
2014-02-25 14:58:09 +01:00