Commit Graph

1997 Commits

Author SHA1 Message Date
Christian Prochaska
1884e16ecf base-nova: increase page fault handler stack size
When building Genode/NOVA with -O0, the page fault handler thread could
run out of stack.

Fixes #977.
2013-11-26 16:50:52 +01:00
Christian Prochaska
fb468c1c87 scout: fix size calculation
Fixes #978.
2013-11-26 16:50:52 +01:00
Josef Söntgen
d0ddc11c09 libc: use File_descriptor::lock in pread/pwrite
Replace the static lock with the file descriptor lock because recursive
calls of p{read,write} would result in a deadlock when using multiple
libc-plugins at the same time.

Fixes #948.
2013-11-26 16:50:52 +01:00
Josef Söntgen
36f91c2007 libc: add Genode::Lock to File_descriptor class
This lock is needed to prevent multiple threads and/or multiple
libc-plugins from using the same file descriptor in p{read,write}.

Fixes #948.
2013-11-26 16:50:52 +01:00
Josef Söntgen
607036718c libports: add fuse-ext2
Fixes #942.
2013-11-26 16:50:52 +01:00
Josef Söntgen
aba67e365f libports: add fuse-exfat
Fixes #942.
2013-11-26 16:50:52 +01:00
Josef Söntgen
3a0922001b libports: add FUSE implementation
This FUSE implementation consists of libfuse, which provides a
subset of the FUSE 2.6 API and libc_fuse, which provides support
for accessing FUSE based file system via the libc.

Fixes #942.
2013-11-26 16:50:52 +01:00
Josef Söntgen
2891653f8a libports: reuse libc_ffat as skeleton for fs tests
In addition, file-system tests will use the AHCI driver instead of the
ATAPI driver. This change side-steps certain issues with Qemu's IDE
emulation.

Fixes #942.
2013-11-26 16:49:26 +01:00
Norman Feske
45a4d59e07 Whitespace fix 2013-11-26 14:32:08 +01:00
Christian Prochaska
934c009eaa Qt5: enable OpenGL support
Known limitations:

- only one Qt window can use OpenGL at this time
- window resizing using the resize handle does not work

Fixes #975.
2013-11-26 14:32:08 +01:00
Christian Prochaska
bef7086f20 libc: fix size calculation in 'Mem_alloc_impl::alloc'
When allocating new backing store in 'Mem_alloc_impl::alloc()', the
requested alignment needs to be considered in the size calculation.

Fixes #973.
2013-11-26 14:32:08 +01:00
Christian Prochaska
ca9ae43e50 base-linux: round up RM session size to page size
Since RM sessions can be used as dataspaces and dataspace sizes are
supposed to have page granularity, RM session sizes should have page
granularity, too.

Fixes #972.
2013-11-26 14:32:08 +01:00
Christian Prochaska
a2e405f9e9 Mesa: improvements for use with Qt5
Among other changes, this patch makes it possible to let Mesa render into
a user-provided buffer instead of the screen. This can be achieved with
the 'eglCreateWindowSurface()' function, which takes a buffer
description as third argument.

Fixes #974.
2013-11-26 14:32:07 +01:00
Christian Prochaska
8e30a07b90 pthreads: add support for recursive mutexes
Fixes #971.
2013-11-26 14:32:07 +01:00
Christian Prochaska
4e9303ff6e ldso: increase MEM_SIZE in 'mmap()'
MEM_SIZE needs to get increased for the 64-bit 'linux_x86' platform when
building with -O0 on the current master branch.

Fixes #970.
2013-11-26 14:32:07 +01:00
Christian Prochaska
ab65a489ce Qt5: use 'git apply' to apply patches
One of the Qt5 patches is supposed to create symbolic links, which is not
supported by GNU patch before version 2.7. Using 'git apply' to apply the
patches solves this problem.

Fixes #969.
2013-11-26 14:32:07 +01:00
Martin Stein
4697e0e07d hw: make bootstrap save against multiple calls
In programs with dynamic linker, _main and thus also platform_main_bootstrap
are called twice. By now, platform_main_bootstrap tried to always access the
startup message in the UTCB of the main thread that gets overridden till the
second call.

fix #967
2013-11-26 14:32:07 +01:00
Martin Stein
5b90113d86 hw: no default values for kernel-call args
ref #967
2013-11-26 14:32:07 +01:00
Norman Feske
0d3f5be95b Dissolve sig contexts in rm_fault and signal tests 2013-11-26 14:32:07 +01:00
Alexander Boettcher
7ab863b495 base: Warn on undissolved signal contexts 2013-11-26 14:32:07 +01:00
Stefan Kalkowski
0c6c70a612 cpu_session: follow-up fix for scale_priority
This is a fixup for commit 5a42f40f04.

ref #961
2013-11-26 14:32:07 +01:00
Sebastian Sumpf
54667241f7 usb_drv: Use GPIO driver on PandaBoard
Also updated run scripts.

Issue #708
2013-11-26 14:32:06 +01:00
Sebastian Sumpf
014b7d665c gpio_drv: Fix linking on PandaBoard
Issue #708
2013-11-26 14:32:06 +01:00
Christian Helmuth
eda44d6154 base-linux: hybrid file-system server
The current implementation is missing support for symbolic links.

Fixes #944.
2013-11-26 14:32:06 +01:00
Christian Helmuth
1bbd54c9b7 ram_fs: use server skeleton library
Related to #944.
2013-11-26 14:32:06 +01:00
Christian Helmuth
76cd788479 Fix some typos 2013-11-26 14:32:06 +01:00
Josef Söntgen
2a7fc69679 libports: add sys/disk.h symlink
Fixes #965.
2013-11-26 14:32:06 +01:00
Josef Söntgen
88851ab699 libports: libc_block plugin
This plugin provides support for using a Block_session connection by
opening "/dev/blkdev".

Fixes #965.
2013-11-26 14:32:06 +01:00
Sebastian Sumpf
634f4c0d8c netperf: Add separate run scripts for lwip/lxip
Also removed target 'app/netperf' and added 'app/netperf/lwip' and
'app/netperf/lxip'.
2013-11-26 14:32:06 +01:00
Alexander Boettcher
80838831d8 make dde_linux repository an optional one
Since dde_linux now contains the port of the Linux IP stack available for all
Genode base-* platforms move the repository out of drivers_arm and drivers_x86
build.conf to the optional build.conf (available to all platforms).
2013-11-26 14:32:05 +01:00
Sebastian Sumpf
5e17fef898 lxip: Port of the Linux TCP/IP stack 2013-11-26 14:32:05 +01:00
Sebastian Sumpf
864a047206 base: Local signal submit 2013-11-25 12:12:31 +01:00
Stefan Kalkowski
50d73e7890 block_session: extend interface with sync() call
To support components, which implement the block session's server side
rpc object, and which doesn't write data to their device backend immediately,
an additional synchronization call is needed. Thereby, clients like for
instance a file system can tell these components, when a synchronization is
required.

Ref #113
2013-11-25 12:12:31 +01:00
Alexander Boettcher
44c7d64fb3 netperf: remove packet/s from statistics
Mixing MB/s and packet/s in one graph is a bit confusing - so remove it from
the graph, but is still in the log output.
2013-11-25 12:12:31 +01:00
Alexander Boettcher
f00195e26d seoul: support to run VM outside VMM's PD
Issue #949

Related to issue #808 - one way to nearly double the maximum VM size for
VMs on 32bit Genode/Nova host if decreased performance is acceptable.
2013-11-25 12:12:31 +01:00
Alexander Boettcher
67c1ad4cdd nova: support creation of vCPU in own PD
With the patch a VMM is not forced anymore to co-located the VMM and VM in same
PD.

Fixes #949
2013-11-25 12:12:31 +01:00
Norman Feske
1df48b8331 ports: common utilities for building VMMs on NOVA
To ease the creation of custom virtual machine monitors on top of
NOVA, this patch moves generic utilities from vancouver resp. seoul to the
public include location 'ports/include/vmm'. As a nice side effect,
this change simplifies 'vancouver/main.cc'.

Issue #949
2013-11-25 12:12:31 +01:00
Martin Stein
07aa56fffb hw: re-add priority down-scaling
This is a follow-up commit for "hw: beautify scheduling-priority code".

ref #960
2013-11-25 09:50:27 +01:00
Martin Stein
883aa83e62 okl4 & priority.run: new order of core services
ref #961
2013-11-25 09:46:28 +01:00
Norman Feske
a984c2342e demo.run: Support for Raspberry Pi 2013-11-25 09:46:28 +01:00
Norman Feske
4388c2a97c Do not try to start Qemu for platform_rpi 2013-11-25 09:46:28 +01:00
Norman Feske
b7b8d22bc3 dde_linux/rpi: Enable USB power on startup
Needed when booting Genode directly from SD card w/o u-boot.
2013-11-25 09:46:09 +01:00
Norman Feske
148206d757 rpi: Framebuffer and platform drivers
The platform driver is used to access the features provided by the
Videocore mboxes, i.e., power configuration and framebuffer setup. The
framebuffer driver uses the platform interface to setup a screen mode of
1024x768.
2013-11-25 09:46:09 +01:00
Norman Feske
1d5c11c7af rpi: Allow the access to videocore memory as MMIO 2013-11-25 09:46:09 +01:00
Norman Feske
62019be6d3 rpi: Change link address to support larger images 2013-11-25 09:46:09 +01:00
Norman Feske
93c7e852e9 dde_linux: USB networking for rpi
Even though the network adaptor gets initialized, networking is not
functional yet.
2013-11-25 09:46:09 +01:00
Norman Feske
c52b7d3076 rpi: Videocore cache definitions 2013-11-25 09:46:09 +01:00
Norman Feske
435bdd5755 dde_linux: Support for Raspberry Pi
At the current stage, the USB HID and storage drivers are prinicpally
working but not stable. If interrupts are not processed fast enough,
devices will get sporadically disconnected.

The USB host-controller driver is not part of the normal Linux kernel.
For this reason, we need to download it separately. There exists a
'prepare_rpi' rule in the 'dde_linux/Makefile' to automate this process.
2013-11-25 09:46:09 +01:00
Norman Feske
0db203fb75 dde_linux: Limit number of merged IRQs
This change makes Irq_context::_handle_one robust against misbehaving
IRQ handlers that always return IRQ_HANDLED, specifically dwc_otg.
2013-11-25 09:46:09 +01:00
Norman Feske
88f635b021 dde_linux: Follow symlinks while grepping includes
This patch principally allows to install symlinks to out-of-Linux tree
drivers into the contrib directory. Those files are then considered for
the 'lx_emul.h' symlink procedure. Is useful as a temporary mechanism
while developing the rpi USB driver.
2013-11-25 09:46:09 +01:00