]>
git.ipfire.org Git - thirdparty/systemd.git/log
Yu Watanabe [Tue, 15 Apr 2025 18:19:16 +0000 (03:19 +0900)]
core/cgroup: remove logic of CGroup v1 attribute assignment
Yu Watanabe [Sun, 6 Apr 2025 07:53:19 +0000 (16:53 +0900)]
core/cgroup: remove unused legacy parameters in CGroupContext
Yu Watanabe [Sun, 6 Apr 2025 01:02:19 +0000 (10:02 +0900)]
core/cgroup: remove CGroup v1 settings in dump message
Yu Watanabe [Sun, 6 Apr 2025 02:08:10 +0000 (11:08 +0900)]
bus-unit-util: refuse setting CGroup v1 properties through DBus
Yu Watanabe [Sun, 6 Apr 2025 01:22:12 +0000 (10:22 +0900)]
core: deprecate CGroup v1 DBus properties
Yu Watanabe [Sun, 6 Apr 2025 00:44:41 +0000 (09:44 +0900)]
core: remove deprecated CGroup v1 settings
Yu Watanabe [Sun, 6 Apr 2025 06:27:25 +0000 (15:27 +0900)]
test: replace deprecated CGroup v1 settings with v2 ones
Yu Watanabe [Tue, 15 Apr 2025 13:32:15 +0000 (22:32 +0900)]
journal: hash_ops related cleanups (#37115)
Yu Watanabe [Tue, 15 Apr 2025 13:31:57 +0000 (22:31 +0900)]
resolve: hash_ops related cleanups (#37116)
Yu Watanabe [Tue, 15 Apr 2025 13:31:40 +0000 (22:31 +0900)]
network-tools: hash_ops related cleanups (#37118)
Yu Watanabe [Tue, 15 Apr 2025 13:30:51 +0000 (22:30 +0900)]
journal: drop old kernels support (#37137)
This drops several codes for supporting old kernels.
Also, this cleanups code a bit.
Luca Boccassi [Mon, 14 Apr 2025 23:03:45 +0000 (00:03 +0100)]
import/export: add support for zstd
Yu Watanabe [Mon, 14 Apr 2025 20:09:28 +0000 (05:09 +0900)]
journal/kmsg: drop old kernels (<3.6) support
The flags field was added by kernel v3.6:
https://github.com/torvalds/linux/commit/
d39f3d77c9b1fe7cc33a14beb4a4849af0a4ac22
Now our baseline on the kernel is v5.4, so we can assume there exists
the flags field after the monotonic timestamp.
This also adds several short comments.
Yu Watanabe [Mon, 14 Apr 2025 19:46:58 +0000 (04:46 +0900)]
journal/kmsg: modernize server_open_dev_kmsg()
Let's assign fd and event source only on success.
Yu Watanabe [Mon, 14 Apr 2025 20:57:14 +0000 (05:57 +0900)]
journal/kmsg: drop Server.dev_kmsg_readable flag and use Server.read_kmsg
When /dev/kmsg is opened, the two flags have the same value.
This also adds an assertion in server_read_dev_kmsg().
Yu Watanabe [Mon, 14 Apr 2025 19:34:40 +0000 (04:34 +0900)]
journal/kmsg: drop support old kernels (<3.5) without reading /dev/kmsg support
/dev/kmsg is readable since kernel v3.5:
https://github.com/torvalds/linux/commit/
e11fea92e13fb91c50bacca799a6131c81929986
Now our baseline on the kernel is v5.4. Let's assume /dev/kmsg is always
readable.
Yu Watanabe [Mon, 14 Apr 2025 19:23:57 +0000 (04:23 +0900)]
journal: remove old kernels (<3.2) support in monitoring hostname
Similar to
cc983fc9dceb989f2cd7cb5ae393630b6c8c2f12 .
Yu Watanabe [Mon, 14 Apr 2025 13:31:53 +0000 (22:31 +0900)]
test: drop error conditions for old kernels (<3.2)
Now our baseline on the kernel is 5.4.
Yu Watanabe [Sun, 13 Apr 2025 20:56:09 +0000 (05:56 +0900)]
tree-wide: IFA_FLAGS is supported since kernel v3.14
Now our baseline on the kernel is v5.4.
Let's unconditionally use the IFA_FLAGS attribute, and drop the getter
and setter for the deprecated header element.
Continuation of
29c2d4e1587e03a4d7589d045b81f7bea91c283e .
Yu Watanabe [Sun, 13 Apr 2025 20:42:24 +0000 (05:42 +0900)]
sd-netlink,sd-device: drop old kernels (<4.2) support
NETLINK_LIST_MEMBERSHIPS is supported since kernel v4.2, specifically
https://github.com/torvalds/linux/commit/
b42be38b2778eda2237fc759e55e3b698b05b315
Our baseline on the kernel is v5.4. Let's drop unnecessary conditions.
Yu Watanabe [Sun, 13 Apr 2025 20:15:45 +0000 (05:15 +0900)]
udev-builtin-net_id: drop old kernels (<4.20) support
Since kernel v4.20, specifically since
https://github.com/torvalds/linux/commit/
9b8b2a323008aedd39a8debb861b825707f01420
IP-over-Infiniband driver also uses dev_port.
As our baseline on the kernel is v5.4. Let's remove the fallback code.
For more details about the fallback, see
https://github.com/systemd/systemd/pull/10082#issuecomment-
421416461
Yu Watanabe [Mon, 14 Apr 2025 11:33:08 +0000 (20:33 +0900)]
test-condition: drop cgroup version check
After
f74ca66e6833c340a1532578176e55cb494590d0 , we do not check the
cgroup version of the runtime environment, and unconditionally returns 0
for "v1", and 1 for "v2".
Yu Watanabe [Mon, 14 Apr 2025 11:46:27 +0000 (20:46 +0900)]
resolve: drop code for supporting old kernels (<3.2)
Now our baseline on the kernel is 5.4.
Note, the removed code triggered assert_return() in
sd_event_source_set_description().
Yu Watanabe [Sun, 13 Apr 2025 21:54:26 +0000 (06:54 +0900)]
loop-util: drop workaround for kernel older than v5.0
Now our baseline on the kernel is v5.4.
Yu Watanabe [Sun, 13 Apr 2025 18:17:26 +0000 (03:17 +0900)]
core: hash_ops related cleanups (#37114)
Yu Watanabe [Sun, 13 Apr 2025 18:17:01 +0000 (03:17 +0900)]
shared/condition: remove cgroup hierarchy check (#37101)
Mike Yuan [Fri, 11 Apr 2025 23:13:45 +0000 (01:13 +0200)]
oomd: it's safe to assume cgv2 now
Mike Yuan [Fri, 11 Apr 2025 23:16:34 +0000 (01:16 +0200)]
shared/condition: remove cgroup hierarchy check
Mike Yuan [Fri, 11 Apr 2025 23:10:12 +0000 (01:10 +0200)]
core/taint: decrease stage array size for "cgroupsv1" removal
Follow-up for
399791eaf0f53887e52488b9f4e966d71abeea6a
Yu Watanabe [Sun, 13 Apr 2025 05:10:28 +0000 (14:10 +0900)]
socket-proxy: fix use-after-free
Fixes a bug in
10e41cdddc45548cc5938a307a16711b47d68062 .
Fixes CID#
1609061 .
Luca Boccassi [Fri, 11 Apr 2025 13:44:30 +0000 (14:44 +0100)]
coredump: verify pidfd after parsing data in usermode helper
Ensure the pidfd is still valid before continuing
Follow-up for
313537da6ffdea4049873571202679734d49f0a1
Yu Watanabe [Fri, 11 Apr 2025 02:15:21 +0000 (11:15 +0900)]
test-networkd-conf: config_parse_ether_addrs() uses ether_addr_hash_ops_free
Hence, set_free() is enough to free the result.
Yu Watanabe [Sat, 12 Apr 2025 16:36:56 +0000 (01:36 +0900)]
network-generator: use hash_ops with destructor for Network, NetDev, and Link
Yu Watanabe [Sat, 12 Apr 2025 15:30:58 +0000 (00:30 +0900)]
wait-online: move manager_process_link() to link.c
Then, rename it to rtnl_process_link().
No functional change, just refactoring.
Yu Watanabe [Sat, 12 Apr 2025 15:20:29 +0000 (00:20 +0900)]
wait-online: use hash_ops with destructor for managing Link
Yu Watanabe [Sat, 12 Apr 2025 14:30:57 +0000 (23:30 +0900)]
resolved-dns-trust-anchor: use hash_ops with destructor for managing DnsAnswer
Yu Watanabe [Sat, 12 Apr 2025 14:24:21 +0000 (23:24 +0900)]
resolved-dns-trust-anchor: use hash_ops with destructor for managing RRs
Yu Watanabe [Sat, 12 Apr 2025 14:19:51 +0000 (23:19 +0900)]
resolved-dns-scope: use hash_ops with destructor for conflict_queue
Yu Watanabe [Fri, 11 Apr 2025 02:32:48 +0000 (11:32 +0900)]
resolve: use dns_name_hash_ops_free for dnssec negative trust anchor
Yu Watanabe [Sat, 12 Apr 2025 02:32:47 +0000 (11:32 +0900)]
journal-remote: introduce custom hash_ops with destructor for MHDDaemonWrapper
Then, we can move declaration of the type from journal-remote.c to
journal-remote-main.c, and drop several #if ... #endif.
Yu Watanabe [Sat, 12 Apr 2025 14:57:21 +0000 (23:57 +0900)]
sd-journal: use hash_ops with destructor that closes JournalFile
Yu Watanabe [Sat, 12 Apr 2025 14:49:45 +0000 (23:49 +0900)]
journal: use hash_ops with destructor that make JournalFile offline and close
Yu Watanabe [Fri, 11 Apr 2025 01:44:29 +0000 (10:44 +0900)]
journal: replace unnecessary use of set_free_free() with set_free()
These uses pcre2_code_hash_ops_free, hence set_free() is enough.
Yu Watanabe [Fri, 11 Apr 2025 02:39:49 +0000 (11:39 +0900)]
unit-file: use set_free() to free paths
As it uses path_hash_ops_free.
Yu Watanabe [Fri, 11 Apr 2025 01:40:20 +0000 (10:40 +0900)]
core/unit: use string_hash_ops_free for Unit.aliases
Yu Watanabe [Fri, 11 Apr 2025 01:28:54 +0000 (10:28 +0900)]
core,systemctl: unit_file_find_fragment() provides names with string_hash_ops_free
names are assigned with set_put_strdup(), hence string_hash_ops_free is
used and we can use set_free() rather than set_free_free().
Yu Watanabe [Fri, 11 Apr 2025 01:19:07 +0000 (10:19 +0900)]
core: replace unnecessary use of set_free_free() with set_free()
These variables are assigned with set_put_strv(), hence
string_hash_ops_free is used.
This also drops unnecessary call of set_ensure_allocated() with wrong
hash ops.
Yu Watanabe [Sat, 12 Apr 2025 13:41:25 +0000 (22:41 +0900)]
install: use hash_ops with destructor for InstallInfo
Yu Watanabe [Fri, 11 Apr 2025 02:47:53 +0000 (11:47 +0900)]
install: use path_hash_ops_free
Yu Watanabe [Sun, 13 Apr 2025 00:15:02 +0000 (09:15 +0900)]
locale-util,kbd-util: several cleanups (#37090)
Mike Yuan [Sat, 12 Apr 2025 22:17:54 +0000 (00:17 +0200)]
core/execute: set_get_strv() does not transfer ownership of strings
Prompted by #37090
Luca Boccassi [Sat, 12 Apr 2025 22:05:10 +0000 (23:05 +0100)]
fstab/gpt-auto: hook up validatefs to /sysroot/usr/ rather than /sysusr/usr/ (#37109)
Yu Watanabe [Sat, 12 Apr 2025 20:56:57 +0000 (05:56 +0900)]
socket-proxy: several cleanups (#37107)
Yu Watanabe [Sat, 12 Apr 2025 20:20:12 +0000 (05:20 +0900)]
stdio-bridge: minor coding style cleanup (#37110)
Yu Watanabe [Fri, 11 Apr 2025 02:43:32 +0000 (11:43 +0900)]
kbd-util: use string_hash_ops_free and set_to_strv()
Yu Watanabe [Fri, 11 Apr 2025 01:04:06 +0000 (10:04 +0900)]
locale-util: use string_hash_ops_free and set_to_strv()
Then we can drop hackish combination of use of set_free_free() and
set_free().
Yu Watanabe [Fri, 11 Apr 2025 00:57:07 +0000 (09:57 +0900)]
strv: constify arguments for strv_equal_ignore_order()
Follow-up for
5072f4268b89a71e47e59c434da0222f722c7f0e .
Yu Watanabe [Fri, 11 Apr 2025 00:54:21 +0000 (09:54 +0900)]
set: introduce set_to_strv()
It is similar to set_get_strv(), but invalidates the set on success.
Yu Watanabe [Fri, 11 Apr 2025 00:15:06 +0000 (09:15 +0900)]
locale-util: coding style cleanups
Yu Watanabe [Fri, 11 Apr 2025 00:13:39 +0000 (09:13 +0900)]
locale-util: filter out non-UTF-8 locales even when failed to parse $SYSTEMD_LIST_NON_UTF8_LOCALES
Yu Watanabe [Fri, 11 Apr 2025 00:11:05 +0000 (09:11 +0900)]
locale-util: fix argument for munmap()
Yu Watanabe [Sat, 12 Apr 2025 05:25:36 +0000 (14:25 +0900)]
socket-proxy: reset connection only in callback functions
This makes connection_complete(), connection_start(), and friends not
reset connection on failure.
Yu Watanabe [Sat, 12 Apr 2025 16:19:44 +0000 (01:19 +0900)]
socket-proxy: use event_source_hash_ops for managing event sources
Yu Watanabe [Sat, 12 Apr 2025 16:22:34 +0000 (01:22 +0900)]
event-util: use DEFINE_HASH_OPS_WITH_VALUE_DESTRUCTOR() to define event_source_hash_ops
Currently, the hash_ops is only used by set, so this does not change
anything. But, there are several benefits,
- we can drop cast in the definition,
- the hash_ops can be also used by hashmap.
Yu Watanabe [Sat, 12 Apr 2025 16:16:00 +0000 (01:16 +0900)]
socket-proxy: use hash_ops with destructor for managing Connection
This also renames context_clear() -> context_done(), to follow our
recent coding style.
Yu Watanabe [Sat, 12 Apr 2025 16:10:29 +0000 (01:10 +0900)]
socket-proxy: make connection_free() return NULL
To make it follow our coding style.
Yu Watanabe [Sat, 12 Apr 2025 05:19:21 +0000 (14:19 +0900)]
socket-proxy: use event_reset_time_relative()
Also, split out context_reset_timer() from connection_release().
No functional change. Preparation for later change.
Mike Yuan [Sat, 12 Apr 2025 17:02:44 +0000 (19:02 +0200)]
stdio-bridge: use DEFAULT_SYSTEM_BUS_ADDRESS
Mike Yuan [Sat, 12 Apr 2025 17:13:35 +0000 (19:13 +0200)]
stdio-bridge: minor modernization for parse_argv()
Mike Yuan [Sat, 12 Apr 2025 13:22:05 +0000 (15:22 +0200)]
fstab-generator: honor x-systemd.validatefs from kernel cmdline too
Mike Yuan [Sat, 12 Apr 2025 13:06:36 +0000 (15:06 +0200)]
fstab/gpt-auto: hook up validatefs to /sysroot/usr/ rather than /sysusr/usr/
We carry a special logic for /usr/ in initrd that it initially gets
mounted to /sysusr/usr/ and later bind mounted to /sysroot/usr/.
When hooking up validatefs it is hence necessary to wait for
the bind mount and validate that, rather than the /sysusr/usr/
established as intermediate transport.
Alternative to #37102
Mike Yuan [Sat, 12 Apr 2025 12:50:46 +0000 (14:50 +0200)]
gpt-auto: do not add /sysusr/usr/ -> /sysroot/usr/ after switch-root
Follow-up for
7852e301e0eb839adf4bf45aa41e39c0dfc03403
Luca Boccassi [Sat, 12 Apr 2025 10:49:00 +0000 (11:49 +0100)]
TODO: drop getenv item, done where needed
Busayo Dada [Wed, 9 Apr 2025 16:23:23 +0000 (17:23 +0100)]
Use secure_getenv() instead of getenv() where appropriate
Luca Boccassi [Sat, 12 Apr 2025 10:46:58 +0000 (11:46 +0100)]
busctl: several cleanups for introspect command (#37103)
Yu Watanabe [Sat, 12 Apr 2025 01:57:33 +0000 (10:57 +0900)]
busctl: use table to format result of introspect command
Yu Watanabe [Sat, 12 Apr 2025 01:17:33 +0000 (10:17 +0900)]
busctl: use set_dump_sorted() and FOREACH_ARRAY()
Yu Watanabe [Sat, 12 Apr 2025 01:04:41 +0000 (10:04 +0900)]
busctl: use strdup_to() and set_consume()
Yu Watanabe [Sat, 12 Apr 2025 03:18:40 +0000 (12:18 +0900)]
busctl: set destructor to member_hash_ops
Then, we can drop the custom destructor of 'Set *mmebers'.
Yu Watanabe [Fri, 11 Apr 2025 22:10:51 +0000 (07:10 +0900)]
network/netdev: remove support of netdevsim
netdevsim device creation by networkd was deprecated by
59a9ef102240adad039f58524cfa5774f9e78a7d (v246), and it does not work
since kernel v5.2:
https://github.com/torvalds/linux/commit/
e05b2d141fef22cfac1928cf0eb6890e5dae4216
Now our baseline for the kernel is v5.4. Let's completely kill the
feature.
Yu Watanabe [Fri, 11 Apr 2025 20:50:32 +0000 (05:50 +0900)]
test: also wait for all queued events being processed
Otherwise, if already 'remove' uevent for the device is queued, then
the device node may not exist any more when 'udevadm wait' command succeeds.
Follow-up for
90941d458a2f6b03cb782ab55c16f605b44c4fd8 .
Yu Watanabe [Sat, 12 Apr 2025 00:21:29 +0000 (09:21 +0900)]
core: drop cgroup v1 synthetic empty event logic (#37099)
Luca Boccassi [Sat, 12 Apr 2025 00:06:31 +0000 (01:06 +0100)]
fido2: hook up with plymouth for notifications (#37089)
Show notifications for fido2 messages in plymouth, so that they
show up in the initrd like the passphrase prompt already does.
Luca Boccassi [Thu, 10 Apr 2025 22:31:10 +0000 (23:31 +0100)]
mkosi: update debian commit reference to
91a4d114e0b5a01385477f8862caedc1056fa68b
*
91a4d114e0 Install new file for upstream profile
Luca Boccassi [Thu, 10 Apr 2025 22:30:50 +0000 (23:30 +0100)]
mkosi: enable autologin also with --console=gui
Luca Boccassi [Thu, 10 Apr 2025 22:10:37 +0000 (23:10 +0100)]
fido2: hook up with plymouth for notifications
Show notifications for fido2 messages in plymouth, so that they
show up in the initrd like the passphrase prompt already does.
Mike Yuan [Fri, 11 Apr 2025 21:43:25 +0000 (23:43 +0200)]
core: unit_watch_pidref() gracefully handles EEXIST
No need to check that at callsite.
Mike Yuan [Sun, 16 Mar 2025 20:09:25 +0000 (21:09 +0100)]
core: drop cgroup v1 synthetic empty event logic
cgroup v2's empty events are reliable, hence we'd not bother
with validating it again in unit_add_to_cgroup_empty_queue()
either.
Yu Watanabe [Fri, 11 Apr 2025 11:28:25 +0000 (20:28 +0900)]
udev-rules: add more verbose messages for ATTR{} and ATTRS{}
This also makes udevd/udevadm mention that the parent device rules
also tested with the device currently processing.
With the following rules file:
```
ATTRS{idVendor}=="0001", ATTRS{idProduct}=="44ff", MODE="0666", GROUP="input",
```
Before:
```
event0: /tmp/hoge.rules:1 Checking conditions for parent devices: ATTRS{idVendor}=="0001", ATTRS{idProduct}=="44ff"
event0: /tmp/hoge.rules:1 No parent device passed parent conditions.
```
After:
```
event0: /tmp/hoge.rules:1 Checking conditions for parent devices (including self): ATTRS{idVendor}=="0001", ATTRS{idProduct}=="44ff"
event0: /tmp/hoge.rules:1 ATTRS{idVendor}=="0001": Cannot read sysfs attribute: No such file or directory
input0: /tmp/hoge.rules:1 ATTRS{idVendor}=="0001": Cannot read sysfs attribute: No such file or directory
PNP0C0E:00: /tmp/hoge.rules:1 ATTRS{idVendor}=="0001": Cannot read sysfs attribute: No such file or directory
LNXSYBUS:00: /tmp/hoge.rules:1 ATTRS{idVendor}=="0001": Cannot read sysfs attribute: No such file or directory
LNXSYSTM:00: /tmp/hoge.rules:1 ATTRS{idVendor}=="0001": Cannot read sysfs attribute: No such file or directory
event0: /tmp/hoge.rules:1 No parent device passed parent conditions.
```
Prompted by #37063.
Yu Watanabe [Fri, 11 Apr 2025 21:47:16 +0000 (06:47 +0900)]
udev: support reverting/serializing/deserializing configurations set by 'udevadm control' (#37067)
Previously, log level, properties, maximum number of worker processes,
and so on set by 'udevadm control' are discarded on restart. This makes
the configuration serialized on stop and deserialized in next
invocation. Also, this introduces 'udevadm control --revert' to clear
previous configurations.
Mike Yuan [Sat, 5 Apr 2025 21:49:12 +0000 (23:49 +0200)]
core/cgroup: drop v1 handling in unit_attach_pids_to_cgroup()
Mike Yuan [Fri, 4 Apr 2025 15:40:15 +0000 (17:40 +0200)]
mount-setup: swap MountMode and condition_fn in struct
To avoid unnecessary 'NULL's in structured initializer.
Yu Watanabe [Mon, 7 Apr 2025 20:26:09 +0000 (05:26 +0900)]
TEST-17-UDEV: add test cases for reverting/serializing/deserializing config
Yu Watanabe [Mon, 7 Apr 2025 19:33:14 +0000 (04:33 +0900)]
udev-config: serialize/deserialize dynamical configurations
Previously, configurations set by 'udevadm control' such as log level,
maximum number of childrens, global properties, and so on were discarded
on restart. This makes udevd serialize those configurations on stop, and
deserialize them in the next invocation.
Yu Watanabe [Sat, 5 Apr 2025 13:41:28 +0000 (22:41 +0900)]
daemon-util: expose notify_remove_fd_warn()
Yu Watanabe [Mon, 7 Apr 2025 20:06:22 +0000 (05:06 +0900)]
udevadm: introduce --revert option to call io.systemd.service.Revert
Yu Watanabe [Mon, 7 Apr 2025 19:58:01 +0000 (04:58 +0900)]
udev-varlink: introduce io.systemd.Udev.Revert method
It reverts dynamically set configurations.
Daan De Meyer [Fri, 11 Apr 2025 11:46:20 +0000 (13:46 +0200)]
mkosi: update fedora commit reference to
6646d13acae64665f63354cd60ecf963ee563b96 (#37065)
*
6646d13aca fmf: Run tests from systemd-tests rpm if possible
Daan De Meyer [Wed, 9 Apr 2025 12:30:13 +0000 (14:30 +0200)]
mkosi: update fedora commit reference to
6646d13acae64665f63354cd60ecf963ee563b96
*
6646d13aca fmf: Run tests from systemd-tests rpm if possible
Daan De Meyer [Fri, 11 Apr 2025 10:12:12 +0000 (12:12 +0200)]
test: Work around bug in meson when installing directory symlinks
Installing symlinks pointing to directories with install_subdir() is
broken (see https://github.com/mesonbuild/meson/pull/14471). Let's work
around the issue for now by manually installing the standalone directory
until the issue is fixed upstream and available in meson in all supported
distributions.