13908 Commits

Author SHA1 Message Date
Christian Helmuth
910e8993c5 version: 25.02 25.02 2025-02-28 12:02:46 +01:00
Norman Feske
9bb57ec7e4 Release notes for version 25.02 2025-02-28 11:54:15 +01:00
Christian Helmuth
2d89b53b0c depot: update recipe hashes 2025-02-27 12:53:40 +01:00
Benjamin Lamowski
56cb822c86 base-hw: don't call Hw_vcpu::run() from the constructor
On x86_64, calling Hw_vcpu::run() will cause a startup exit that is
signaled to the VMM. The VMM will subsequently call with_state().
When Hw_vcpu::run() is called from the Hw_vcpu constructor, this can
lead to a situation where the VMM calls with_state() on a vCPU that
isn't fully constructed yet.

The VMM library API requires that the vCPU starts up in order to emit a
startup exit at construction. Call Hw_vcpu::run() from the
Vm_connection::Vcpu constructor instead of calling run() from the
Hw_vcpu constructor to avoid running a native vCPU that isn't fully
constructed yet.

Fixes #5442
2025-02-27 12:53:40 +01:00
Christian Helmuth
cd40a5be96 tool: have_cmd_arg -> have_cmd_switch (run, autopilot, dts)
Issue #5432
2025-02-27 12:53:40 +01:00
Stefan Kalkowski
62b44f2fbf genode_c_api/usb: correct interface setting
Remove regression in Session_component::set_interface by always iterating
over all interfaces to potentially change each alternate setting (from
passive to active and vice versa).

Ref genodelabs/genode#5349
Fix genodelabs/genode#5467
2025-02-27 12:53:40 +01:00
Christian Prochaska
472112fe0d qt6_declarative: install libqtqmlcoreplugin.lib.so
Fixes #5466
2025-02-27 12:53:40 +01:00
Stefan Kalkowski
1bfa53876f usb: correct client-quota tracking of DMA buffers
Fix genodelabs/genode#5465
2025-02-27 12:53:40 +01:00
Josef Söntgen
f081306eeb lighttpd: use pcre library
Needed for pattern matching in the configuration file.

Issue genodelabs/genodians.org#37.
2025-02-27 12:53:40 +01:00
Christian Helmuth
f0b1c77617 lighttpd: enable mod_auth/authn_file modules
Issue genodelabs/genodians.org#37.
2025-02-24 17:20:25 +01:00
Norman Feske
e14fab0873 Road map for 2025 2025-02-24 16:47:11 +01:00
Josef Söntgen
48f37b4a46 libc: use original 'gai_strerror()' implementation
This commit removes the dummy 'gai_strerror()' implementation in
favor of the one provided in the contrib sources to allow for better
diagnosing of DNS related problems.

As long as NLS is not set the implementation looks up the error string
via the error-code directly.

Fixes #5464.
2025-02-24 16:39:56 +01:00
Christian Prochaska
9cebdeb1a9 qt6_base: no mmap for sqlite3 files, reduce warnings
Fixes #5463
2025-02-24 16:39:56 +01:00
Josef Söntgen
89c63604ba api/openssl: add pkg-config files
Issue genodelabs/goa#81
2025-02-24 16:39:56 +01:00
Josef Söntgen
581ee3eda6 api/curl: add pkg-config file
Issue genodelabs/goa#81
2025-02-24 16:39:56 +01:00
Alexander Boettcher
c6e8acc037 sel4: avoid unsynchronized vm state tracking
Remove _extra_dispatch_up which is not required and racy which may lead
to hangs between ep and vcpu thread.

Issue #5461
2025-02-24 16:39:56 +01:00
Alexander Boettcher
ea97d1943a foc: avoid unsynchronized vm state tracking
_extra_dispatch_up is used by the ep and the vcpu
thread unsynchronized, which leads under sufficient load to race situations,
where both wait for each other and no one ever will continue. Remove
_extra_dispatch_up completely, which is not required, as the kernel interface
handles this specific state already.

Fixes #5461
2025-02-24 16:39:56 +01:00
Christian Prochaska
c0f82a0048 qt6: set CMAKE_PLATFORM_NO_VERSIONED_SONAME variable
Fixes #5462
2025-02-24 16:39:56 +01:00
Johannes Schlatow
adcad2118f api/zlib: add pkg-config file
genodelabs/goa#81
2025-02-24 16:39:56 +01:00
Johannes Schlatow
889fe955aa depot/openssl: mirror opensslconf.h at include/
Since Goa expects include files to reside at include/ or
include/spec/{x86,x86_64,arm_64,64bit}, the src/lib/.../opensslconf.h is
missed by Goa. This commit adds Goa compatibility for the openssl api
archive.

genodelabs/goa#81
2025-02-24 16:39:56 +01:00
Johannes Schlatow
9d7f8cfa9b platform: fix device-PD support
When executed on NOVA, the platform driver will use the kernel IOMMU
(device PD) if the devices ROM either does not name any IOMMU or support
for the named IOMMU is not available (e.g. because the generic platform
driver is used). In the latter case, reserved-memory ranges were not
correctly added to the device PD.

genodelabs/genode#5066
2025-02-24 16:39:56 +01:00
Stefan Kalkowski
b1d53fd4c8 sculpt: add F&S i.MX 8MP Armstone 2025-02-24 16:39:56 +01:00
Stefan Kalkowski
0393965d5a usb: clear URB's payload after finishing
Fix genodelabs/genode#5457
2025-02-24 16:39:55 +01:00
Christian Prochaska
a7422e316d base: increase linker area size
Fixes #5460
2025-02-24 16:39:55 +01:00
Christian Prochaska
b0f0e63b9f qt6: add qtwebchannel and qtwebengine APIs
Fixes #5459
2025-02-24 16:39:55 +01:00
Christian Prochaska
dbf23a7a0c qt6: add qt5compat module
Fixes #5458
2025-02-24 16:39:55 +01:00
Christian Prochaska
c9406c246e qt6: fix "file name too long" error in gn tool
Fixes #5456
2025-02-24 16:39:55 +01:00
Sebastian Sumpf
13eef6a87a genode_c_api/usb: fix size calculation of isoc_payload
simplify and fix wrong calculation of 'size' for isoc_payload.
2025-02-24 16:39:55 +01:00
Stefan Kalkowski
31a5597f66 hw: dump cpu context when kernel faults
* Introduce architecture-specific Cpu::panic routine
* Dump stored CPU state in panic routine
* Try to backtrace kernel context's stack

Fix genodelabs/genode#5425
2025-02-24 16:39:55 +01:00
Stefan Kalkowski
17d1e41053 hw: explicit cpu state argument in kernel entry
* Instead of only implicitely update the last scheduled Cpu context with
  the CPU state, when entering the architecture-speficic machine
  exception vector, cache this data on kernel context stack, and deliver
  it as argument when entering the kernel via high-level language
* Handle Cpu context's exception explicitely in kernel main routine
* Make cached CPU state available to error handling lambda in case of
  Kernel::Mutex double entering (aka kernel fault)
* Rename Cpu::schedule to Cpu::assign

Ref genodelabs/genode#5425
2025-02-24 16:39:55 +01:00
Stefan Kalkowski
98032a2605 hw: re-implement kernel mutex
* Rename Kernel::Lock into Kernel::Mutex
* Replace Guard object by template function that expects
  lambda to handle re-entrance by same cpu

Ref genodelabs/genode#5425
2025-02-24 16:39:21 +01:00
Stefan Kalkowski
c2cee1a885 vmm_x86: test x86 virtualization nightly with hw
Ref genodelabs/genode#5450
2025-02-24 16:39:21 +01:00
Benjamin Lamowski
759bfec3a9 hw: x86_64: clean up vCPU startup
- and store the vCPU startup state in a dedicated enum
- return the STARTUP exit from Vm::run()
- initialize the vCPU from Vm::proceed() instead of Vm::exception()

Fix genodelabs/genode#5450
2025-02-24 16:39:20 +01:00
Roman Iten
faa5b9ca40 tool/run: abort 'run_genode_until forever'
...when autopilot mode is enabled (RUN_OPT '--autopilot').

Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
28994f8c27 pc: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
347953e159 ports: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
a207a5491c libports: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
3534383ec9 base-nova: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
cefcd1fffa base-linux: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
6c1e269ed2 base: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
df26fe779a os: use 'assert'-proc in run scripts
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
369a7a242b tool/run: introduce generalized 'assert'-proc
Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
815e207470 tool/autopilot: mark incompletely executed tests
...with "ABORT", in case of an unmet 'assert_spec' in the run scenario.

Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
c228bbfda3 tool/autopilot: rename 'get_cmd_[arg|switch]'-proc
...to be consistent with the naming in tool/run.

Related to #5432
2025-02-24 16:39:20 +01:00
Roman Iten
43098a1b4c tool/dts: rename 'get_cmd_[arg|switch]'-proc
...to be consistent with the naming in tool/run.

Related to #5432
2025-02-24 16:39:20 +01:00
Roman Iten
5ebcf36d69 tool/run: introduce '[have_]cmd_arg'-procs
Renaming 'get_cmd_switch' and 'get_cmd_arg' to 'have_cmd_arg' and
'cmd_arg' respectively blends in nicely with the now omnipresent pattern
with 'have_[spec|board|installed|include]'.

This commit deprecates 'get_cmd_switch' and 'get_cmd_arg', which will be
removed in a later commit.

Issue #5432
2025-02-24 16:39:20 +01:00
Roman Iten
052e1bf4b7 tool/run: introduce 'have_recipe'-proc
This procedure is useful for run scripts that depend for example on a
board support package that is provided only for certain boards, possibly
by a third-party repo.

Issue #5432
2025-02-24 16:39:20 +01:00
Christian Prochaska
db0d76ba2f qt: support extra CMake flags
Fixes #5454
2025-02-24 16:39:20 +01:00
Christian Prochaska
9c786fcfa9 qt5: set CMAKE_SHARED_LIBRARY_SONAME_C_FLAG variable
Fixes #5453
2025-02-24 16:39:20 +01:00
Christian Prochaska
58f4a84f60 qt5: move WebEngine-related API recipes to genode-world
Fixes #5452
2025-02-24 16:39:20 +01:00