Commit Graph

2032 Commits

Author SHA1 Message Date
7cbce1f47c libc: socket_fs_plugin handle MSG_PEEK reads
In case the socket is non-blocking, a read with the MSG_PEEK flag set
has to return -1 and EWOULDBLOCK/EAGAIN in case no data is availble and
the socket is connected. Returning zero implies the socket is in
non-connected state. Therefore, check the connection state in this
situation and return accordingly.

issue #5104
2024-02-28 16:31:45 +01:00
080d3b6b63 vfs: support watch handlers on application signal level
Fixes #4092
2024-02-26 08:59:10 +01:00
a529fffb7b Update jitterentropy to version 3.4.1
Fixes #5112
2024-02-26 08:59:10 +01:00
edba179497 qt5: fix debug link creation
Fixes #5116
2024-02-26 08:59:10 +01:00
c57b841556 Fix link of jitterentropy port
The current port of jitterentropy is version 1.2.0 from pre-2017, whose
sources were recently moved to

  http://www.chronox.de/jent/releases/historic/jitterentropy-1.2.0.tar.xz

Note the *historic* label.

Issue #5112
2024-02-26 08:59:09 +01:00
8c9b23ef56 test-libc_connect: use black hole as Uplink for lxip
For connection timeout test, create uplink domain via the 'black_hole'
that is only reachable through the nic_router.

issue #5104
2024-02-26 08:59:08 +01:00
05283ac247 test/libc_connect: use IP outside of domain for timeout
The IP for the connect timeout test should be in another nic_router
domain, so ARP request are only processed be the nic_router and no other
IP stacks.

issue #5104
2024-02-26 08:59:08 +01:00
61115c3776 depot_autopilot: adjust RAM quotas for lxip
Adjust the autopilot tests that use lxip to the lower RAM requiremnts of
lxip (old and new).

issue #5104
2024-02-26 08:59:08 +01:00
fb4ac714b2 recipes: adjust runtime quotas to lxip
lxip (old and new) requires less RAM now.

issue #5104
2024-02-26 08:59:08 +01:00
93b3e7d12f libc: socket_fs_plugin add monitor call
Add monitor call for '_fd_read_ready' because this maps to 'poll' in
'vfs_lxip' which should be executed by the EP.

issue #5104
2024-02-26 08:59:08 +01:00
de6048f517 libc: consistency of tv_sec when tv_nsec wraps
The libc's internal calculation of the tv_sec and tv_nsec fields must be
based on the same ms value. Otherwise, tv_sec is not always immediately
incremented whenever tv_nsec wraps. For applications, this inconsistency
can result in observed jumps in time.

Fixes #5098
2024-02-26 08:31:05 +01:00
94ebdc9269 qt5: add missing header to qpa_init.h
Thanks to Andreas for the hint.
2024-02-26 08:31:05 +01:00
6855b27553 openssl: update to version 1.1.1w 2024-02-26 08:31:04 +01:00
4535a27dfc libc.run: add missing library libm
Issue genodelabs/genode#5094
2024-02-26 08:31:04 +01:00
00d3f61961 libdrm/etnaviv: align implementation with lima
This commit brings the etnaviv back end implementation in line
with the one from lima. Since the etnaviv driver itself handles
different contexts implicitly rather explicitly like lima and
iris for the moment only a main-context is used for all operations.

Issue genodelabs/genode-imx#8.
2024-02-26 08:31:04 +01:00
83e3178e9b Add FindXxx.cmake files to api archives
The FindXxx.cmake files are used by Goa's cmake support.

genodelabs/genode#5087
2024-02-26 08:31:04 +01:00
f3cf4a7d7b qt5: adapt QtWebEngine for host GCC 13
Fixes #5091
2024-02-26 08:31:03 +01:00
c5a1e3daa3 acpi_suspend: extend test scenario
- add PS/2 input drivers
- add GPU client test case - glmark2
- remove display driver before suspend
- route log output via terminal on display to gather information, since in
  most cases serial/AMT is not available after ACPI resume

Issue #5081
2024-02-26 08:31:03 +01:00
c2e1013ad4 acpica: improve faked RSDP
More sane table values fix broken output on verbose.

Issue #5083
2024-02-26 08:31:03 +01:00
980793970d acpica: detach MMIO region before re-attaching
This is a follow-up commit for the changes in #5069.

Fixes #5083
2024-02-26 08:31:03 +01:00
30e37d90dd acpica: provide verbose config
If "verbose" is set to true in the config, AcpiOsPrintf etc. are enabled
to log to a dedicated LOG session using the Format:Console utility.

Issue #5083
2024-02-26 08:31:03 +01:00
a6b30d58df lib/format: parse precision and lalign
Prevent errors if precision and left alignment are part of the string.
String precision is applied to limit access to the configured number of
characters but ignored for other types.

Issue #5083
2024-02-26 08:31:03 +01:00
a5b8090e14 acpica: remove static constructor from lib
Issue #5083
2024-02-26 08:31:03 +01:00
d9e4d32374 libdrm/lima: propagate allocation failure
Failed allocations were still denoted with a successful return value
to the caller. This situation was triggered by artificial testing and
has not been observed yet in practice. In case the 'LIMA_GEM_CREATE'
I/O control fails Mesa will dereference invalid pointers anyway.

Issue genodelabs/genode-allwinner#27.
2024-02-26 08:31:03 +01:00
c4679e7af6 depot: update recipe hashes 2023-12-13 12:33:05 +01:00
77b0e10e88 vfs/ram_file_system: deferred unlink
This patch changes the unlink operation of the ram fs to defer the
destruction of a file until it is no longer referenced by any VFS handle.
When unlinked, the file no longer appears in the directory. But it can
still be opened and accessed.

With this change, a parent process of a Unix-like subsystem becomes able
to pass the content of an unlinked file to a forked child process. This
mechanism is required when using the 'exec' command in Tcl scripts.

Another use case is the 'tmpfile()' function.

Fixes #3577
2023-12-13 12:33:05 +01:00
63dd5efa72 libc: fix post-2100 infinite-loop on 32-bit
The call of `mktime`/`timegm` with a broken down time after year 2100
led to an infinite-loop on 32bit.

genodelabs/genode#3707
2023-12-13 12:33:05 +01:00
c1bc9f8557 libc: use timegm instead of mktime
By using `mktime()`, which assumes local time, we render the `TZ`
environment variable ineffective. Instead, `timegm()` should be used to
set the real-time clock to UTC.

genodelabs/genode#5074
2023-12-13 12:33:05 +01:00
82a9582dd7 qemu-usb: minor documentation fixes 2023-12-01 11:17:22 +01:00
9d989b1557 fetchurl: add 'ignore_failures' option
This option is useful in cases where batching is configured and
failing to fetch a resource should not influence the over-all
result.

Issue genodelabs/genodians.org#32.
2023-12-01 10:43:45 +01:00
8baf19022c depot: update recipe hashes 2023-11-30 15:11:36 +01:00
1e166c7236 Supplement the build of shared libs where needed
This is a follow-up commit to the adaptation of the run scripts to the
consistent use of [build_artifacts] (issue #4860).

The missing build of libm remained undetected until the recent removal
of implicit shared-library builds (issue #5061).
2023-11-28 14:44:29 +01:00
b27bd256dd libports: use [build_artifacts] in qt5 run scripts
Issue #4860
2023-11-28 14:44:29 +01:00
db72301eb0 nic_router.run: use [build_artifacts]
Issue #4860
2023-11-28 14:44:28 +01:00
e3881163c4 libc-net: eliminate annoying warning in sendmsg
Fix genodelabs/genode#5052
2023-11-28 14:24:26 +01:00
3264a22c1e socket fs: simplify AF_UNSPEC
Remove separate context state for AF_UNSPEC.

issue #5031
2023-11-28 14:24:25 +01:00
c7956aa41b socket_fs/vfs_lxip: errno 65 is EHOSTUNREACH
Return "no route to host" on errno 65 which is EHOSTUNREACH in legacy
dde_linux, return EHOSTUNREACH accordingly in libc's socket fs.

issue #5031
2023-11-28 14:24:25 +01:00
a482bb8a89 libc: silence sysconf(_SC_GETPW_R_SIZE_MAX) warning
Currently, running ripgrep on Genode emits
"Warning: sysconf(71) not implemented".

Return -1 without setting errno, which is a valid return value according
to getpwnam(3) and silence the warning.

Fixes #5043
2023-11-28 14:24:24 +01:00
b41df1fb7a mk: create separate debug info files
Commit also adapts Qt5 libraries.

Issue #5015
2023-11-28 14:24:24 +01:00
9aa0de24af libc: implement '_spinlock()' and '_spinunlock()'
FreeBSD libc code uses only a single spinlock instance and, thus there
is no obvious reason why it would need to be implemented as an actual
spinlock. _spinlock() and _spinunlock() functions are implemented with a
static pthread mutex.

Issue #725
2023-11-28 14:24:23 +01:00
94bbdbb71d libc: add ___pthread_cleanup_push/pop_imp aliases
Issue #725
2023-11-28 14:24:23 +01:00
ebea6fb23f libc: use threaded mode
Issue #725
2023-11-28 14:24:23 +01:00
6402182815 sntp_client: add DNS lookup option
This commit adds a new configuration option, `dst_addr` to the
'sntp_client' that accepts either an IP address or a DNS hostname. If a
DNS hostname is provided, the 'sntp_client' will resolve the IP address
before each SNTP request. The 'dst_ip' configuration option is
deprecated but kept for compatibility until 'dst_addr' is fully adopted.

xsd/net_types.xsd: add Net_address type
sntp_dummy_rtc: adjust configuration to use pool.ntp.org

Fixes genodelabs/genode#5003
2023-11-28 14:24:23 +01:00
b634549722 depot: update recipe hashes 2023-10-25 14:01:40 +02:00
26be862e08 acpica: suppress pci related output during startup
Issue #4643
2023-10-25 08:58:53 +02:00
19ec0b2dd4 depot: add compat-libc to pkg/goa
Fixes genodelabs/genode#5030
2023-10-25 08:58:53 +02:00
5261fe626d libc: support connect(..AF_UNSPEC..) on UDP sockets
A 'connect' with AF_UNSPEC dissolves address association in order to
re-connect to another address.

Issue #5031
2023-10-25 08:58:53 +02:00
cf43e0c3da libdrm/lima: always map BO with ID 1 2023-10-25 08:58:53 +02:00
d49700f562 stdcxx: add another 'std::basic_ios' flavor 2023-10-25 08:58:53 +02:00
ab91750869 acpica: add option to select GPE usage
Mitigates the ACPI IRQ storm of T490s.

Issue #4643
2023-10-25 08:58:52 +02:00