Commit Graph

13816 Commits

Author SHA1 Message Date
Norman Feske
cdbc31add8 fixup "Enable -ffreestanding by default" (libgcov, x86emu) 2025-01-22 10:12:47 +01:00
Norman Feske
b455139e8c Enable -ffreestanding by default
Fixes #5429
2025-01-21 12:30:57 +01:00
Christian Prochaska
b4f4a6db09 qt6: install the SVG image format plugin
Fixes #5427
2025-01-20 17:34:01 +01:00
Christian Prochaska
d3d901886f qt6: fix dangling pointer in QGenodeWindowSurface
Fixes #5426
2025-01-20 17:33:57 +01:00
Stefan Kalkowski
0d4d23a161 fixup "hw: implement helping of pager threads" (fix bomb) 2025-01-20 16:33:56 +01:00
Stefan Kalkowski
827401ee2d fixup "hw: implement helping of pager threads" (managed ds pf faults) 2025-01-17 14:38:09 +01:00
Christian Prochaska
fa9373cbd3 qt6: use window title as label for GUI session
Fixes #5424
2025-01-17 08:56:22 +01:00
Alexander Boettcher
bfaacb1ada fixup "base: use Dataspace_attr in io_mem _map_local(...)" - fiasco nightly failure
Issue #5406
2025-01-16 13:28:56 +01:00
Alexander Boettcher
8eae6501b7 tool: use bender hwp options also for foc and seL4
Issue #5406
2025-01-16 11:37:04 +01:00
Alexander Boettcher
e840a3f8f9 sculpt: use rom_fs for fiasco and foc
Issue #5406
2025-01-16 11:36:27 +01:00
Alexander Boettcher
7c5f879b91 squash "base: use Dataspace_attr in io_mem _map_local(...)" - rename to "base: use Map_local_result in io_mem _map_local(...)"
Issue #5406
2025-01-16 11:34:47 +01:00
Norman Feske
2b566042ad fixup "gems: ABI and depot recipe for dialog API" 2025-01-15 17:54:33 +01:00
Norman Feske
6e82520165 fixup "vm_session: use Callable for with_state" 2025-01-15 17:52:30 +01:00
Norman Feske
1677a36225 fixup "monitor/sandbox: use Callable" (more callables) 2025-01-15 17:44:29 +01:00
Norman Feske
c564013a5d vm_session: use Callable for with_state
Issue #5420
2025-01-15 16:59:19 +01:00
Norman Feske
d033e4c153 sandbox: don't use Xml_node as return value
Issue #5411
2025-01-15 16:07:59 +01:00
Norman Feske
c5e6d071e5 monitor/sandbox: use Callable
Issue #5420
2025-01-15 15:54:42 +01:00
Norman Feske
68613c8265 cpu_sampler: propagate Create_thread_error
The accounting of caps for the UTCB allocation on base-hw puts pressure
on the out-of-ram/caps handling of Create_thread_result in the CPU
sampler. This patch implements the formerly missing error handling.

Issue #5408
2025-01-15 15:13:03 +01:00
Stefan Kalkowski
67985e2ba9 hw: remove unused object pool of pager ojects
Fix genodelabs/genode#5417
2025-01-15 14:54:43 +01:00
Stefan Kalkowski
673c97b3e6 hw: sanitize kernel's signal datastructures
* Move all Kernel::Signal_* structures to kernel/signal.*
* Remove return value of kill_signal_context, which wasn't evaluated
* Remove Kernel::Signal_context::can_kill
* Remove Kernel::Signal_context::can_submit
* Remove Kernel::Signal_receiver::can_add_handler
* Turn nullptr into cxx nullptr instead of just zero
* Turn boolean values into true/false instead of one/zero
* Always add to signal FIFO also if submit counter
  cannot get increased enough

Fix genodelabs/genode#5416
2025-01-15 14:54:39 +01:00
Stefan Kalkowski
3bdfb078bf hw: implement helping of pager threads
Instead of blocking in case of exceptions and MMU faults, delegate
the faulter's scheduling context to the assigned pager thread.

Fix genodelabs/genode#5318
2025-01-15 14:54:28 +01:00
Stefan Kalkowski
84cabaf9b7 hw: move remaining pager code to pager.cc
Consolidate core's ha-specific pager code in one and the same compilation unit.

Ref genodelabs/genode#5318
2025-01-15 14:54:12 +01:00
Stefan Kalkowski
f2d91fd56a hw: pager thread per cpu
Instatiate a separate pager thread for each cpu core. Every time a pager
object gets managed by the Pager_entrypoint, assign it to the pager thread
on the same cpu core.

Ref genodelabs/genode#5318
2025-01-15 14:53:54 +01:00
Stefan Kalkowski
a5664ba5c0 hw: use enums in stack base definition
Ref genodelabs/genode#5319
2025-01-15 14:53:35 +01:00
Stefan Kalkowski
7e4decfacc hw: sanitze cpu context
* Rename Kernel::Cpu_job to Kernel::Cpu_context (alias Kernel::Cpu::Context)
* State first Cpu affinity of Cpu::Context at construction time
* Move cpu affinity argument from kernel syscall create_thread to start_thread
* Ensure that Cpu pointer is always valid

Fix genodelabs/genode#5319
2025-01-15 14:52:40 +01:00
Stefan Kalkowski
d9ca56e1ed hw: add missing six-arguments syscall for riscv
Ref genodelabs/genode#5319
2025-01-15 14:52:34 +01:00
Stefan Kalkowski
7010dbbbbb hw: generalize IPC-helping to a common mechanism
* Removes helping from Ipc_node and Thread class
* Implement helping as mechanism of Scheduler::Context

Ref genodelabs/genode#5318
2025-01-15 14:52:25 +01:00
Stefan Kalkowski
b7d3d8237b hw: ensure board_name is set as depot build
When no BOARD variable is set via the build environment,
the board_name in the platform_info ROM needs to be set either.

Ref genodelabs/genode#5360
Fix genodelabs/genode#5414
2025-01-15 14:47:07 +01:00
Norman Feske
f4c255955f fixup "base: remove base/internal/unmanaged_singleton.h" (armv6) 2025-01-15 14:32:40 +01:00
Alexander Boettcher
13abc33ec9 platform: be robust on IRQ creation failure
In case invalid IRQ numbers are used (255 on x86), the IRQ session creation
request may be denied and the platform driver is killed because of the
uncatched exception, which must be avoided.

Issue #5406
2025-01-15 12:24:45 +01:00
Alexander Boettcher
2e3e57f50a foc: increase max count for RPC caps in core
to boot Sculpt

Issue #5406
2025-01-15 08:58:10 +01:00
Alexander Boettcher
b451f4c45c foc: add support to add ACPI rsdp in platform info
which is required for UEFI boots.

Issue #5406
2025-01-15 08:58:10 +01:00
Alexander Boettcher
5e2ba4d859 acpi: be robuster on IO_MEM session denied
Issue #5406
2025-01-15 08:58:10 +01:00
Alexander Boettcher
896e652b4c platform/pc: be robust on IOMMU claiming
Issue #5406
2025-01-15 08:58:10 +01:00
Alexander Boettcher
0d641600a4 base: use Dataspace_attr in io_mem _map_local(...)
Issue #5406
2025-01-15 08:58:10 +01:00
Alexander Boettcher
42c78b946b nova: add x2apic support
Fixes #5413
2025-01-15 08:46:51 +01:00
Johannes Schlatow
2743e625f6 base-nova: allow access to IOAPIC
This allows the platform driver to control remapping of legacy
interrupts.

genodelabs/genode#5066
2025-01-15 08:41:05 +01:00
Johannes Schlatow
0ebf11f143 platform/pc: re-use init code during resume
genodelabs/genode#5066
2025-01-15 08:37:17 +01:00
Johannes Schlatow
d25a9a0e21 platform/pc: remove Env from generate() methods
This was a relic from a time where we dumped the page tables from NOVA
and therefore needed to attach the corresponding dataspaces.

genodelabs/genode#5066
2025-01-15 08:37:08 +01:00
Johannes Schlatow
e3cc8274ba platform/pc: implement IRQ remapping for Intel
genodelabs/genode#5066
2025-01-15 08:36:48 +01:00
Johannes Schlatow
c1eafc39ab platform/pc: use queued invalidation interface
genodelabs/genode#5066
2025-01-15 08:36:42 +01:00
Johannes Schlatow
a392b93187 platform/pc: move register-based invalidation
This is in preparation of implementing the queued-invalidation
interface.

genodelabs/genode#5066
2025-01-15 08:36:33 +01:00
Johannes Schlatow
de7e11c122 platform/pc: implement IOAPIC
genodelabs/genode#5066
2025-01-15 08:36:12 +01:00
Johannes Schlatow
54b036d61c platform: add IRQ remapping support
genodelabs/genode#5066
2025-01-15 08:36:03 +01:00
Johannes Schlatow
a392e258cd pci_decode: report IOAPIC devices
genodelabs/genode#5066
2025-01-15 08:35:47 +01:00
Johannes Schlatow
54153be983 acpi_drv: report IOAPIC devices
genodelabs/genode#5066
2025-01-15 08:35:15 +01:00
Johannes Schlatow
811e51a24e acpi_drv: reflect DMAR properties in report
genodelabs/genode#5066
2025-01-15 08:35:13 +01:00
Christian Prochaska
64e0c5413f qt6: add 'i18n' example
Fixes #5421
2025-01-15 08:29:48 +01:00
Norman Feske
1d315bc355 sculpt_manager: use Callable
Issue #5420
2025-01-14 17:59:44 +01:00
Norman Feske
cc7501cee7 base: add util/callable.h
Fixes #5420
2025-01-14 17:39:26 +01:00