Commit Graph

10816 Commits

Author SHA1 Message Date
Michael Mueller
2b695b2392 Merged refactored sandbox library with upstream. 2025-01-21 18:31:53 +01:00
Michael Mueller
504bc57806 Merge branch 'ealan' into genode-24 2025-01-21 18:31:08 +01:00
Michael Mueller
93595efd44 MxIP platform support package. 2025-01-21 15:31:16 +01:00
Michael Mueller
52d5a3d19e Compile nic_router with -O3. 2025-01-21 15:28:06 +01:00
Michael Mueller
65f6af0415 Added method to determine wether a cell is a brick or not. 2025-01-21 15:26:30 +01:00
Michael Mueller
ce1dea524b Increased buffer size for uplink session. 2025-01-21 15:25:34 +01:00
Michael Mueller
c1fe8673e2 Applied fix from discord forum to fix AHCI reset bug to make AHCI drives visible to the system. 2025-01-21 15:24:53 +01:00
Michael Mueller
afce79da8a Allow test-ahci-atapi to write to device in block test scenario. 2025-01-21 15:23:31 +01:00
Michael Mueller
fd4aea9def Added support for bricks, i.e. static resource containers. 2025-01-21 15:22:24 +01:00
Michael Mueller
991dd5e6c5 Added experimental lock-free MPMC queue as packet queue implementation. 2025-01-21 15:20:57 +01:00
Michael Mueller
7535440e79 Avoid argument parser in blinktree server for now. 2025-01-21 15:19:32 +01:00
Michael Mueller
dd41406bcd Use MxIP for blinktree server. 2025-01-21 15:19:02 +01:00
Michael Mueller
0eacac72e5 Made volatile cell component compilable again. 2025-01-21 15:16:28 +01:00
Michael Mueller
9979d7596e Rewrote raw_nic to use lwIP. 2025-01-21 15:15:58 +01:00
Michael Mueller
d632954bbf Reset channel usage prediction when resuming MxTasking. 2025-01-21 15:15:19 +01:00
Michael Mueller
d776f038b2 Updated scenario for VSCode dry-run. 2025-01-21 15:14:34 +01:00
Michael Mueller
cabb9b13c4 Start drivers as sub-components of Hoitaja. 2025-01-21 15:13:29 +01:00
Michael Mueller
e999d08c12 Introducing MxIP as a lwIP-based library for user-space networking. 2025-01-21 15:12:03 +01:00
Michael Mueller
0daf335dc2 Changed lwIP parameters to improve performance. 2025-01-21 15:09:40 +01:00
Michael Mueller
911f29bcf2 Increased RAM for drivers and added TOPO service to config. 2025-01-21 15:09:02 +01:00
Michael Mueller
e0eabd9d7c Changed serial port number for log output. 2025-01-21 15:08:24 +01:00
Michael Mueller
fb20e83fc4 Updated hashes. 2025-01-21 15:07:58 +01:00
Michael Mueller
a271e98cfb Removed debug output. 2025-01-21 15:06:12 +01:00
Michael Müller
9c51d3aefc Merge branch 'genodelabs:master' into master 2025-01-21 15:00:29 +01:00
Christian Helmuth
cd6701c483 depot: update recipe hashes 2024-12-11 08:35:22 +01:00
Norman Feske
60d009e6c6 nitpicker: notify clients on any panorama change
Nitpicker used to notify GUI clients about an updated GUI info only when
the total panorama size changed. However, in situations where two
capture clients are swapped, the total size may stay the same whereas
the relation of displays to different parts of the panorama is no longer the
same. Such changes are interesting to some clients like the window layouter,
which needs to update the assignement of screens to displays.

This patch changes nitpicker so that each panorama change is reflected
to GUI clients as a mode-info update.

Issue #5390
2024-12-10 14:12:24 +01:00
Alexander Boettcher
d0522706ba nova: avoid false pager assertion
Fixes #5399
2024-12-10 14:12:24 +01:00
Norman Feske
0749f8cbdf wm: free content view IDs if decorator disappears
This patch fixes the following error message printed by the wm upon the
restart of a decorator.

  Error: freeing non-empty slab block"
  Error: ID space not empty at destruction time

Fortunately, the error is not critical as the backing store is released
along with the session.
2024-12-10 14:12:24 +01:00
Norman Feske
1ddbb3444c sculpt/nitpicker: use label for matching decorator
The 'label_suffix=" -> decorator"' rule is weaker than the
more generic 'label_prefix="runtime -> wm"' rule, to the effect that the
decorator is assigned to the "desktop" domain instead of the "decorator"
domain. Replace the 'label_prefix' by the decorator's concrete label
to resolve this ambiguity.
2024-12-10 14:12:24 +01:00
Christian Helmuth
5665e8059a Optional session label in audio_in/out connection 2024-12-10 14:12:24 +01:00
Norman Feske
3067a2c51d nitpicker: prevent the pointer from going nowhere
The 'size_changed' handling remained without effect when the (last)
display re-appears (e.g., back from screen blank) because
'Capture_root::bounding_box()' delivered the '_fallback_bounding_box'
in the intermediate phase where no display was present. Unfortunately,
'Capture_root::visible()' failed to apply the same logic. This patch
makes 'visible()' consistent with 'bounding_box()'. It has the
welcome effect that nitpicker remembers the pointer position during
the dark phase.

Fixes #5397
2024-12-10 14:12:24 +01:00
Christian Helmuth
1d73cf2003 Prevent false warnings in memcpy (GCC 12)
GCC 12 tree-loop-distribute-patterns generates false warnings of
-Warray-bounds, -Wstringop-overflow, or -Wstringop-overread in memcpy()
and memcpy_cpu() in static/inline cases for code that obviously prevents
its execution by invariant checking. On -O3, even more warnings are
produced.
2024-12-10 14:12:24 +01:00
Norman Feske
010847b69c decorator: fix sync-handling corner case
This patch fixes the corner case where a call of 'trigger_gui_sync'
unexpectedly did not result in the execution of '_handle_gui_sync'.
When sporadically called (w/o having installed a period sync handler)
in a time window shortly after a previous '_handle_gui_sync' that just
switched back to sporadic mode, the situation was considered as !idle.
So the 'local_submit' was skipped.

The patch fixes the issue by always issuing a 'local_submit' except when
operating in period mode. The '_gui_sync_enabled' state is now driven
only by '_handle_gui_sync' to make the intent more clear.

Fixes #5396
2024-12-10 14:12:24 +01:00
Josef Söntgen
96d9f5d317 usb: consider alternate setting in endpoint select
When constructing an Usb::Interface and implicitly corresponding
Usb::Endpoint instances only select endpoints relevant for the
given alternate setting.

The libusb has to be changed to delegate the correct alternate
setting to the constructor too.

Fix genodelabs/genode#5394
2024-12-10 14:12:24 +01:00
Alexander Boettcher
97e638a2ac intel/display: avoid mode detection in irq task
On hotplug, the C++ side of the driver now gets just notified,
without any further detection.

On the C++ side, now specific actions are scheduled explicitly, which will be
executed step by step. New appearing actions will be queued and are
not eligible to run before the former actions of the list are processed.

Fixe #5392
2024-12-10 14:12:24 +01:00
Alexander Boettcher
ba013af1a3 sculpt_manager: handle manual fb config w/o mirror
config node gracefully. If no mirror is set, ever claim one entry
as the mirrored one. Without this change, the current effect is that
the UI does not allow to merge one of the discrete modes.

Issue #5392
2024-12-10 14:11:57 +01:00
Alexander Boettcher
e520dbbb7e nova: avoid assertion during SC cleanup
Regression introduced in Issue #5314

Fixes #5391
2024-12-10 14:11:57 +01:00
Norman Feske
7928597249 doc: remove docs covered by the Genode books
Foster the Genode books as a single point of reference for Genode's
documentation. E.g., the Getting-Started section of the "Genode
Foundations" book has long obsoleted doc/getting_started.txt. This
patch also remove long orphaned texts like gsoc_2012.txt. The approach
described in the porting guide has now been replaced by the Goa SDK.

The Genode books can be downloaded at the genode.org website. Like
Genode, they are open source. All text is licensed as CC-BY-SA and
can be found at https://github.com/nfeske/genode-manual

Fixes #5393
2024-12-10 14:11:57 +01:00
Christian Helmuth
f2c25383af acpi_event: prevent misleading warning about PRESS_RELEASE 2024-12-10 14:11:57 +01:00
Stefan Kalkowski
b529b1eac6 qemu-usb: prevent assertion by eager URB processing
Instead of directly process URBs whenever a USBPacket arrives from
the Qemu ported XHCI layer, send a local signal to the I/O handler,
which will process the requests after leaving certain sensible
code pathes like usb_packet_complete. Otherwise, it might happen
that a packet, which was still marked as being queued gets already
completed, which leads to an assertion and hang of the library.

Fix genodelabs/genode#5389
2024-12-10 14:11:57 +01:00
Benjamin Lamowski
b21c8729ea base: provide core_ram_allocator via platform_add_local_services()
This is a prerequisite to rework the allocation of core data structures
for VM sessions in hw.

Issue #5221
2024-12-10 14:11:57 +01:00
Norman Feske
d5f3cc6ec2 terminal: ignore input without valid GUI mode
This prevents the potential corner case where the terminal receives input
at a time when the window has no valid size and _text_screen_surface is
not constructed.
2024-11-27 13:37:34 +01:00
Stefan Kalkowski
4730312c1e hw: register state and backtrace when core faults
If one of core's threads is causing an MMU fault, dump the
register state and stack backtrace of the faulting stack to
aid debugging.

Fix genodelabs/genode#5387
2024-11-27 13:33:24 +01:00
Christian Prochaska
35a679d861 libc: pthread cond/rwlock improvements
- add a check to detect if a different thread has
  initialized the internal object in the meantime
- remove ENOMEM error since the 'Libc::Allocator'
  is not supposed to throw exceptions
- remove init mutex from 'pthread_condattr_init()'
  since there is no implicit initialization which
  could happen in parallel like with mutex/cond/rwlock

Issue #5386
2024-11-26 01:08:19 +01:00
Christian Prochaska
37842757ac libc: synchronize implicit pthread mutex initialization
Fixes #5386
2024-11-26 01:08:15 +01:00
Christian Helmuth
011b44c282 depot: update recipe hashes 2024-11-20 08:58:39 +01:00
Norman Feske
a3193b919c terminal: survive malformed dynamic re-config 2024-11-20 08:58:39 +01:00
Norman Feske
798b49fcc3 vfs server: survive malformed dynamic re-config
The VFS server used to respond to any invalid config by exiting.
By disregarding such configurations instead, this patch makes the VFS
server robust against temporary malconfiguration.
2024-11-20 08:58:39 +01:00
Roman Iten
d095945d6c fs_rom: clear dataspace if lookup failed
Issue #3897
2024-11-20 08:58:39 +01:00
Norman Feske
9e4b27a829 fs_rom: use dataspace bounds for clearing
Avoid potential risk of exceeding the dataspace bounds should the stored
file size be larger than the current ds size.

Issue #3897
2024-11-20 08:58:39 +01:00