Commit Graph
14 Commits
Author SHA1 Message Date
noxiouz 4c7af7d9d1 coredump: capture crashing thread ID and name
Add %I (TID in initial PID namespace) to the core_pattern, so the
kernel passes the crashing thread's TID to systemd-coredump. Use it
to read the thread's comm name from /proc/<tid>/comm and log both as
new journal fields:

  COREDUMP_TID=       — TID of the crashing thread
  COREDUMP_THREAD_NAME= — comm name of the crashing thread

These fields are also stored as xattrs on external coredump files
(user.coredump.tid, user.coredump.thread_name) and displayed by
coredumpctl info alongside the PID line.

For single-threaded processes the TID equals the PID and thread_name
equals comm; for multi-threaded programs with named worker threads
(pthread_setname_np / PR_SET_NAME) this identifies which thread
crashed without needing to open the coredump file itself.

The new fields are optional in the socket forwarding path, so older
systemd-coredump senders are handled gracefully.

Co-developed-by: Claude <claude@anthropic.com>
2026-03-18 10:27:27 +00:00
noxiouz fbf533859f network: fix error aggregation in wwan_check_and_set_configuration()
When removing marked routes, the condition `if (ret)` incorrectly
overwrites any previously accumulated error in `ret` with the latest
return value `r`, even if `r >= 0` (success). This means an earlier
real error can be silently cleared by a subsequent successful
route_remove() call.

The parallel address_remove() block just above uses the correct
`if (r < 0)` pattern. Apply the same fix to the route_remove() block.
2026-03-03 08:59:48 +09:00
noxiouz 8d421c0870 network: fix LLDP field type in Interface Varlink IDL
sd_lldp_tx_describe() returns a single object (the LLDP TX configuration),
but the IDL declared LLDP as SD_VARLINK_ARRAY|SD_VARLINK_NULLABLE. This
caused server-side validation failures ("Field 'LLDP' should be an array,
but it is of type 'object'") whenever networkctl status was called on an
interface with LLDP TX active.

Also fix the field comment: the LLDP field represents the transmit
configuration, not received neighbors.

Follow-up for dd2934d44e.
2026-03-03 00:04:50 +01:00
noxiouz 3d54a40dae login: add missing NoSessionPIDFD error to io.systemd.Login IDL
The error is emitted by vl_method_create_session() when the session leader
process does not have a pidfd available, but was never declared in the IDL.

Fixes: 3180c4d461
2026-03-02 10:08:57 +00:00
noxiouz 3eacf0d321 login: fix ReleaseSession.Id dispatch flag in io.systemd.Login Varlink handler
The ReleaseSession method's Id field is declared as nullable (?string) in
the IDL, allowing callers to omit it so that the method releases the
caller's own session via session_is_self(NULL). The SD_JSON_MANDATORY flag
in the dispatch table contradicts this and makes omitting Id return -EINVAL
("Invalid argument", parameter "Id") instead.

Drop the flag so omitting Id is treated as passing NULL.

Fixes: 2baca6c22b
2026-03-02 10:06:39 +00:00
Anton Tiurin ce1361d7b3 resolved: use DNS_TYPE_DNSKEY for trust anchor support (#40850)
Fix typo: DNS_TYPE_DNSKEY should be used instead of DNS_TYPE_KEY.
- DNS_TYPE_KEY is deprecated
- Source code at resolved-dns-trust-anchor.c#L313 handles
DNS_TYPE_DNSKEY records, but not DNS_TYPE_KEY
So DNS_TYPE_KEY is not referenced anywhere
2026-03-02 13:44:26 +09:00
Anton Tiurin 2506a57bca resolve: add missing ServiceNotProvided error to Varlink IDL (#40858)
The error is emitted by `vl_method_resolve_service_complete()` when an
SRV record with a root domain hostname is found, indicating the service
is explicitly not offered on the queried domain (RFC 2782 Usage Rules),

but was not declared in the `io.systemd.Resolve` interface definition.

Follow-up for 3d8f2c1464.
2026-03-02 13:22:14 +09:00
noxiouz 1fc868ac6b core: fix typo in Unit.List sentinel error name 2026-03-02 13:19:33 +09:00
noxiouz 3d9191cd5c shared: fix sysext ImageType IDL missing mstack value, add enum IDL test
Add the missing 'mstack' value to the ImageType enum in the
io.systemd.sysext Varlink IDL — image_type_table in discover-image.c
already defines IMAGE_MSTACK = "mstack" but it was absent from the IDL.

Export vl_type_ImageType so the test can reference it, and add
TEST_IDL_ENUM(ImageType, ...) to the enums_idl test to catch
similar regressions in the future.
2026-02-27 08:49:54 +01:00
noxiouz 37b8cd71cd shared: fix comment typos in Udev and AskPassword Varlink IDL 2026-02-27 08:49:21 +01:00
noxiouz 54796ea3b2 mountfsd: include imageName in MountImage Varlink reply 2026-02-27 08:48:48 +01:00
noxiouz c22a131e74 import: fix AlreadyInProgress Varlink error missing remote field
The handler sends the remote URL as a parameter via sd_varlink_errorbo()
but the IDL declared the error with no fields, making the payload
undiscoverable via introspection.
2026-02-27 08:48:25 +01:00
noxiouz 56d44e8a02 hostname: fix OperatingSystemImageID/Version Varlink IDL
Both fields are populated from IMAGE_ID/IMAGE_VERSION in os-release,
which are plain strings.

Fix typo in include.
2026-02-27 04:09:15 +01:00
Anton Tiurin 9893859beb networkctl: change bitrate format from 'bps' to 'Bps' 2025-09-26 14:41:20 +09:00