Commit Graph

1511 Commits

Author SHA1 Message Date
947235ee34 drm: use Gpu session for i965 driver
Issue #2507.
2017-08-30 09:59:58 +02:00
604ff9ca2c msync and Sytem V semaphore dummies
Ref #2467
2017-08-30 09:59:57 +02:00
c2c47d2e35 libc: silence close() failure messages
Return EBADF but do not log an error for invalid descriptors.

Ref #2467
2017-08-28 16:49:51 +02:00
2c4f0e5505 port of PCG random number generator library
http://www.pcg-random.org/
http://www.pcg-random.org/using-pcg-c.html

Ref #2477
Fix #2499
2017-08-28 16:49:51 +02:00
1fce8d0d74 default ahci_drv and part_blk Block sessions to read-only
Add a "writeable" policy option to the ahci_drv and part_blk Block
servers and default from writeable to ready-only. Should a policy
permit write acesss the session request argument "writeable" may still
downgrade a session to ready-only.

Fix #2469
2017-08-28 16:49:51 +02:00
2356128237 Remove unused Qemu TCP redir from autopilot scripts 2017-08-28 16:49:48 +02:00
1f0f182151 Increase cap quota for test-pthread
The test creates 100 pthreads in a loop, which should immediately
self-destruct. Therefore, we can grant more than 130 caps.
2017-08-28 16:49:48 +02:00
2e62d2d4be libc: construct 'Timeout' object on-demand for pthreads
Fixes #2502
2017-08-28 16:49:45 +02:00
f5afd28d1f test/libc_vfs_block: add missing 'Libc::with_libc()'
Fixes #2500
2017-08-28 16:49:45 +02:00
1a3a302708 test/moon: add missing 'Libc::with_libc()'
Fixes #2501
2017-08-28 16:49:44 +02:00
ead59325c7 lib/vfs/fatfs: sync after every write
Ref #2410
2017-08-28 16:49:44 +02:00
aec4f0db2d libc: generate nslexer.c,nsparser.c at build stage
The files are generated via flex and bison. Until now, this step was
performed when preparing the libc port. Unfortunately, the generated
files have subtle differences depending on the flex/bison versions
installed in the host. For example, the bison version number appears in
the generated code. This, in turn, breaks the hash mechanism of the
depot where a src/libc archive ends up being slightly different when
created on different hosts.

By moving the code generation to the build stage, the src/libc archive
merely contains the nslexer.l and nsparser.y source files but not the
generated files.
2017-08-28 16:49:43 +02:00
ff935ee1b0 libports: Mesa demos + adjust Qt5
* Adjust Qt5 to new Mesa version
* Added eglgears
* Adjust Mesa library build target

fixes #2488
2017-08-28 16:49:43 +02:00
66db2ee54e libports: Mesa 11.2.2
OpenGL 4.5 with software and i965 rendering back ends.

issue #2488
2017-08-28 16:49:43 +02:00
dbff692c86 libports: DRM library 2.4.65
issue #2488
2017-08-28 16:49:42 +02:00
c1029dd556 libc: add '__fpclassifyf' to libc symbol map
issue #2488
2017-08-28 16:49:42 +02:00
61ae2e5b80 libc-plugin: make fd allocator thread safe
issue #2488
2017-08-28 16:49:42 +02:00
17df52bfbd libc: allow RTLD_GLOBAL for dlopen
issue #2488
2017-08-28 16:49:42 +02:00
b0935ef9b2 VFS: nonblocking interface
The VFS library can be used in single-threaded or multi-threaded
environments and depending on that, signals are handled by the same thread
which uses the VFS library or possibly by a different thread. If a VFS
plugin needs to block to wait for a signal, there is currently no way
which works reliably in both environments.

For this reason, this commit makes the interface of the VFS library
nonblocking, similar to the File_system session interface.

The most important changes are:

- Directories are created and opened with the 'opendir()' function and the
  directory entries are read with the recently introduced 'queue_read()'
  and 'complete_read()' functions.

- Symbolic links are created and opened with the 'openlink()' function and
  the link target is read with the 'queue_read()' and 'complete_read()'
  functions and written with the 'write()' function.

- The 'write()' function does not wait for signals anymore. This can have
  the effect that data written by a VFS library user has not been
  processed by a file system server yet when the library user asks for the
  size of the file or closes it (both done with RPC functions at the file
  system server). For this reason, a user of the VFS library should
  request synchronization before calling 'stat()' or 'close()'. To make
  sure that a file system server has processed all write request packets
  which a client submitted before the synchronization request,
  synchronization is now requested at the file system server with a
  synchronization packet instead of an RPC function. Because of this
  change, the synchronization interface of the VFS library is now split
  into 'queue_sync()' and 'complete_sync()' functions.

Fixes #2399
2017-08-28 16:49:38 +02:00
8b073f46df depot: update recipe hashes 2017-08-18 10:25:28 +02:00
6f8cc92ce0 run: disable some scripts in autopilot mode
because of the limit hardware features of our x86 32bit test hardware
2017-08-18 10:24:48 +02:00
4020766105 sel4: adapt timeouts of run scripts
Issue #2451
2017-08-18 10:24:47 +02:00
5f35175644 app/sequence: execute components in sequence
Fix #2476
2017-08-18 10:24:46 +02:00
2d8bfd8569 pthread: do not error from pthread_condattr_setclock dummy
Do not regard a fake condattr object produced by pthread_condattr_init
as invalid when passed to no-op dummies.

Fix #2471
2017-08-17 11:04:23 +02:00
31caae4765 lib/vfs/fatfs: FAT file-system plugin using FatFS library
See repos/libports/src/lib/vfs/fatfs/README and
/home/user/repo/genode/repos/libports/run/libc_vfs_fat.run for
documentation.

Ref #2410
2017-08-17 11:04:23 +02:00
6401d52e61 test/libc_vfs: interpret EPERM to indicate missing symlink support
Ref #2462
2017-08-17 11:04:23 +02:00
cfa1bec00d run template for block-backed VFS plugins
Repurpose the libc plugin test template libc_filesystem_test.inc into
libc_vfs_filesystem_test.inc.

Ref #2410
2017-08-17 11:04:22 +02:00
f09fc4a5a2 Update FatFS port to version 0.13
- Update FatFS port from 0.07e to 0.13
- Multi-device support
- Basic test at run/fatfs
- Adaption of existing components

Note, ffat is now consistently renamed to fatfs.

Ref #2410
2017-08-17 11:04:22 +02:00
473aa3454d Move libc file-system test into test/libc_vfs
Preparation for removing ffat library.

Issue #2410
2017-08-17 11:04:22 +02:00
2deddf1e6d Check for symlink target length errors
Check for symlink length errors at the VFS library and the ram_fs and
vfs servers.

Fix #2462
2017-08-17 11:04:21 +02:00
66c0c7b6f1 sel4: add x86_64 support
Issue #2451
2017-08-17 11:04:20 +02:00
c5c9d71df3 libc: track O_ACCMODE flags from open
Fix #2457
2017-08-17 11:04:19 +02:00
87c19cb11a libc: handle O_CREAT|O_NOFOLLOW in open correctly
We return ELOOP if the file already exists on
open(...,O_CREAT|O_NOFOLLOW).

Fixes #2458
2017-08-17 11:04:19 +02:00
95329c82e2 sel4: update to 5.2.0
Issue #2451
2017-08-17 11:04:19 +02:00
6a43f3c11a file system: use Id_space instead of Node_handle_registry
Fixes #2436
2017-08-17 10:59:43 +02:00
0d1be4abe2 depot: update recipe hashes 2017-06-29 12:00:04 +02:00
f48e71e070 acpica: use platform_info for rsdt/xsdt lookup
Issue #2242
2017-06-29 11:59:50 +02:00
c9db94313c libc: improve VFS error handling 2017-06-19 12:35:57 +02:00
c223f74ce5 libc: support getsockopt(SO_TYPE) 2017-06-19 12:35:57 +02:00
9ded7e0295 nic_dump test: raise nic_router cap quota
Did not suffice at least at hw + x86_64.

Ref #2398
2017-06-19 12:35:56 +02:00
3aa0a772b9 fuse_fs: add test run scripts
Fixes #2448
2017-06-19 12:35:56 +02:00
a6db86b4dc fuse_fs: handle errors on mkdir correctly
Fixes #2449
2017-06-19 12:35:56 +02:00
06b25a9082 Adjust GPIO cap quota in nic run scripts 2017-06-19 12:35:55 +02:00
a1b1525ec1 lx_fs: handle errors on mkdir correctly
Fixes #2444
2017-06-19 12:35:55 +02:00
892ede515f depot: update recipe hashes 2017-05-31 16:18:01 +02:00
b814188d7a Remove references to global heap in SDL audio
Ref #1987
2017-05-31 13:16:24 +02:00
854b70fd7d Prevent warning about "narrowing conversion" 2017-05-31 13:16:23 +02:00
99937a6267 qt5: update to version 5.8.0
Fixes #2424
2017-05-31 13:16:23 +02:00
8bd0efced6 Remove obsolete RAM/CAP services from run scripts
Adapted launchpad and also the rm_fault and resource_request tests.

Issue #2407
2017-05-31 13:16:22 +02:00
632ef28463 os: removal of deprecated os/config.h (fix #2431) 2017-05-31 13:16:22 +02:00