libc_fs: handle 'Packet_alloc_failed' exception

With this patch, when a 'Packet_alloc_failed' exception occurs in the
'write()' function, the function waits for a packet acknowledgement and
the release of the packet and then tries the packet allocation again.

Fixes #348.
Noux: use correct member in Vfs_io_channel::size()

Fixes #351.
Noux: fix 'Vfs_io_channel::lseek()' calculations

With this patch the 'Vfs_io_channel::lseek()' function takes the offset
argument into account when calculating the new seek offset in the SEEK_CUR
and SEEK_END cases.

Fixes #352.
Noux: return dummy time in 'gettimeofday()'

The 'find' program can abort if the 'gettimeofday()' function returns -1,
which it currently does. With this patch the 'gettimeofday()' returns a
dummy time instead to prevent such a termination.

Fixes #353.
ffat_fs: work with absolute paths

The recently added 'Genode::Path' class makes it easy to create absolute
paths. With this patch the 'ffat_fs' server uses the 'Genode::Path' class
where possible instead of working with 'f_chdir()' and relative paths.
This also solves the problem reported in issue #355, which was caused by
storing a relative file name in the 'File' node.

Fixes #355.
Noux: fix SYSCALL_READ return value

There is an error if reading from a Io_channel returns -1. In this
case the syscall should fail.

Fixes #356.
Fiasco.OC: implement thread-affinity function
Fiasco.OC: enable SMP for L4Linux

This commit comprises the following changes to enable L4Linux to use several
CPUs:
* change default configuration for x86 and ARM
* add atomic cmpxchg operation to l4re library
* implement l4_sleep (per thread)
* enable setting affinity for VCPUs and IRQs
* move "per CPU" section within linker-script (x86 only)
* introduce SMP run-script for pandaboard
* deactivate direct scheduler (Fiasco.OC syscall) access by L4Linux
Enable noux_bash and noux_gdb on Pandaboard
libports: add lwIP tests for Pandaboard on foc
Fiasco.OC: update to recent version (svn rev. 40)
L4Linux: update to recent version (svn rev. 25)
Increase quota of USB driver

The memory allocation heuristics in the usb driver provided by dde_linux
changed with the recent commit 71b2b42936df049ae0e80e7650774ad23275d635.
Apparently, the new variant requires a larger memory pool. Increasing
the quota is a temporary fix until the memory allocator gets revisited.
Fiasco.OC: fix io-port fault answer in sigma0

In sigma0 normally no answer tag to a request/fault is created. It simply uses
the message tag received with the request. This doesn't work out when I/O ports
are requested. This patch constructs an appropriate answer tag. Moreover,
we have to enable I/O port protection in the kernel configuration.
Make first block of allocator_avl 64bit fit

The first metadata-block, which is inherent part of the allocator object
itself has a fixed size which isn't suitable enough for some 64bit platforms
(e.g. core's RAM-allocator on a 64bit platform with lots of different regions).
This commit let the block size be address-width aware.
Adapt timer quota to change in 'Allocator_avl'
Fiasco.OC: always use fixed priority scheduler

The alternative weighted scheduler might lead to some threads don't make
any progress anymore (take for example the signal test). So we have to use
the fixed priority scheduler also in the kernel configuration for 64 Bit.
Timer: make ram_quota and stack platform-dependent