Yu Watanabe
5e48fd0506
network/tunnel: allow Local=/Remote=any for all tunnel types
...
It seems there is no restriction for local and remote addresses.
Fixes #34930 .
2024-10-30 10:29:07 +01:00
Yu Watanabe
7e322c3dd0
sd-netlink,network: do not set NLM_F_CREATE and NLM_F_EXCL flags if an interface index is specified
...
If an ifindex is specified, we are modifying the existing interface.
Hence, these flags should not be set. Otherwise, the request will be
refused with -EEXIST.
2024-10-30 10:28:18 +01:00
Yu Watanabe
1003093604
network/netdev: skip processing netdev if it is already detached
...
No functional change, as currently networkd detaches NetDev objects only
on stop (or invalid .netdev file is loaded).
Preparation for later commits.
2024-10-30 03:07:32 +09:00
Yu Watanabe
3252a1f274
network/netdev: split out netdev_attach_name_full()
...
No functional change, preparation for later commits.
2024-10-30 03:07:32 +09:00
Yu Watanabe
f27ae592f7
update-utmp: wait slightly longer for the private bus socket being active
...
Before a339495b1d , update-utmp typically
connects the public DBus socket when disconnected from the private DBus
socket, as dbus service should be active even during PID1 is being reexecuted.
However, after a339495b1d , update-utmp
tries to connect only the private DBus socket, but reexecution of PID1
may be slow, hence all trials may fail when the reexecution is slow.
With this change, now it waits for 100ms to 2000ms, so in total it waits
about 37 seconds in average, previously about 4 seconds.
2024-10-29 08:43:21 +09:00
Yu Watanabe
feb9ccb56e
Merge pull request #34633 from keszybz/sd-json-enum-formatting
...
Add sd_json_format_enabled() helper
2024-10-29 03:29:03 +09:00
Yu Watanabe
3499e87885
Merge pull request #34806 from ryantimwilson/protect-control-groups
...
cgroup: Add support for ProtectControlGroups= private and strict
2024-10-29 02:53:11 +09:00
Yu Watanabe
99b76684d7
Merge pull request #34902 from ryantimwilson/root-dir-not-exists-error
...
core: Add RootDirectory= path to error message if directory does not exist
2024-10-27 13:49:05 +09:00
Yu Watanabe
7354936ef7
core/cgroup: rename CGROUP_PRESSURE_WATCH_ON/OFF -> CGROUP_PRESSURE_WATCH_YES/NO
...
No functional change, but let's print yes/no rather than on/off in systemd-analyze.
Similar to 2e8a581b9c and
edd3f4d9b7 .
(Note, the commit messages of those commits are wrong, as
parse_boolean() supports on/off anyway.)
2024-10-27 03:04:35 +09:00
Yu Watanabe
5dc0668802
sd-event: fix memleak when built without assertion
...
Fixes a bug introduced by baf3fdec27 .
This also adds several assertions at the beginning of the function.
Fixes #34899 .
2024-10-26 17:21:34 +02:00
Yu Watanabe
ddeb701b55
man: fix typo
...
Follow-up for 115fac3c29 .
2024-10-26 14:00:38 +09:00
Yu Watanabe
f7804c1aa2
basic/missing: add short comment about when CLONE_NEWCGROUP is added
2024-10-26 13:59:19 +09:00
Yu Watanabe
f7078de515
Merge pull request #34884 from poettering/run0-disconnect-fix
...
run: reconnect if our dbus connection is terminated
2024-10-26 02:50:48 +09:00
Yu Watanabe
6d6048b4cb
Merge pull request #34881 from poettering/run0-ui-tweaks
...
run0: various UI tweaks
2024-10-26 02:49:48 +09:00
Yu Watanabe
e7c567cc78
man: insert a comma before 'and'
...
Follow-up for bd91f23acf .
2024-10-24 16:42:59 +09:00
Yu Watanabe
81d1fcce97
Merge pull request #27916 from yuwata/test-execute-credstore
...
test: update permission of credstore
2024-10-24 16:34:49 +09:00
Yu Watanabe
4e83ac4029
Revert "TEST-55-OOMD: workaround for kernel regression in 6.12-rcX"
...
This reverts commit 88bbf187a9 .
The kernel regression has been hopefully fixed by
https://github.com/torvalds/linux/commit/c6508124193d42bbc3224571eb75bfa4c1821fbb
which is included in 6.12-rc4.
Let's drop the workaround.
2024-10-24 09:10:15 +02:00
Yu Watanabe
491c903dbe
man/network: suggest to not request IA_NA when received RA with Managed bit unset
...
Follow-up for 1f5a052963 .
2024-10-24 05:32:40 +09:00
Yu Watanabe
228e26ba03
Merge pull request #34834 from yuwata/protect-home-tmpfs-read-only
...
core/namespace: make ProtectHome=tmpfs makes /home and friends read-only as documented
2024-10-24 05:32:12 +09:00
Yu Watanabe
5811a0117c
core/namespace: replace MOUNT_PRIVATE_TMP_READ_ONLY with MOUNT_PRIVATE_TMP with .read_only = true
2024-10-24 03:05:06 +09:00
Yu Watanabe
d69ee5acdc
core/namespace: coding style cleanups
2024-10-24 03:05:06 +09:00
Yu Watanabe
0cc496b2d2
core/namespace: honor MountEntry.read_only, .options, and so on in static entries
...
Otherwise, ProtectHome=tmpfs makes /home/ and friends not read-only.
Also, mount options for /run/ specified in MountAPIVFS=yes are not
applied.
The function append_static_mounts() was introduced in
5327c910d2 , but at that time, there were
neither .read_only nor .options in the struct. But, when later the
struct is extended, the function was not updated and they were not
copied from the static table.
The fields has been used in static tables since
e4da7d8c79 , and also in
94293d65cd .
Fixes #34825 .
2024-10-24 02:59:46 +09:00
Yu Watanabe
967c586e9c
man/network: fix typo
...
Follow-up for 1f5a052963 .
2024-10-23 17:25:37 +09:00
Yu Watanabe
f0b974050d
measure: fix typo
...
Follow-up for 0005411352 .
2024-10-23 17:25:37 +09:00
Yu Watanabe
82d8a2c810
TEST-55-OOMD: fix typo
...
Follow-up for 63d4c4271c .
2024-10-23 17:25:37 +09:00
Yu Watanabe
aa7507ea4a
TEST-02-UNITTESTS: reuse $TEST_MATCH_SUBTEST to specify unit tests to be run
...
Then, we can easily test specific unit tests in qemu or container.
2024-10-22 20:14:33 +09:00
Yu Watanabe
c443f6924f
test-execute: update permission of credstore
...
Follow-up for 40fb9eebbc .
2024-10-22 20:14:33 +09:00
Yu Watanabe
1f5a052963
man: suggest to use DHCPv6Client= when upstream provides RA with the Managed bit unset
...
Follow-up for daf9f42f91 .
2024-10-22 04:35:03 +09:00
Yu Watanabe
5ff567f74f
network/dhcp6: do not request IA_PD when running in the other-information mode
...
This reverts the following commits:
- 180cc5421d
"sd-dhcp6-client: allow to request IA_PD on information requesting mode"
- cf7a403e47
"sd-dhcp6-lease: adjust information refresh time with lifetime of IA_PD"
- 1918eda30d
"network/dhcp6: process hostname and IA_PD on information requesting mode"
As per discussion in #34299 ,
https://github.com/systemd/systemd/issues/34299#issuecomment-2425153221
the offending commits violate RFC 8415 section 18.2.6:
> The client uses an Information-request message to obtain
> configuration information without having addresses and/or delegated
> prefixes assigned to it.
2024-10-22 04:34:50 +09:00
Yu Watanabe
88bbf187a9
TEST-55-OOMD: workaround for kernel regression in 6.12-rcX
...
This ignore failures when running on kernel-6.12-rcX, which has a
regression in the kernel scheduler that breaks PSI.
From https://github.com/systemd/systemd/issues/32730#issuecomment-2415312260
> There is a known scheduler bug in 6.12 that breaks psi. It leaks
> "running tasks" counts, which matches your symptoms of seeing partial
> pressure only.
>
> Do you see "inconsistent task state" warnings in dmesg | grep psi?
>
> A fix is queued in the scheduler tree, should be sent to Linus shortly:
> https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=c6508124193d42bbc3224571eb75bfa4c1821fbb
Workaround for #32730 .
2024-10-19 12:34:48 +09:00
Yu Watanabe
12e58ab18d
Merge pull request #34820 from poettering/dissect-image-uclean
...
dissect-image: generate better log message for EUCLEAN dissect error
2024-10-19 02:15:01 +09:00
Yu Watanabe
5df9ebad70
Merge pull request #34597 from ryantimwilson/oomd-pressure-duration
...
Add ManagedOOMMemoryPressureDurationSec override setting for units
2024-10-17 14:30:13 +09:00
Yu Watanabe
4ce436fccf
Merge pull request #34797 from yuwata/test-mount
...
TEST-60: several cleanups and potential performance improvement
2024-10-17 07:23:36 +09:00
Yu Watanabe
73970cdcd1
TEST-60-MOUNT-RATELIMIT: disable journal ratelimiting
...
Otherwise, journal check in testcase_mount_ratelimit() may fail and we
need to wait 2 minutes.
2024-10-17 01:53:45 +09:00
Yu Watanabe
805d0eed0b
TEST-60-MOUNT-RATEMINIT: split into small test cases
...
Then, use run_testcases().
2024-10-17 01:53:45 +09:00
Yu Watanabe
c5928a7684
TEST-60-MOUNT-RATELIMIT: wait for mount unit being started or stopped
2024-10-17 01:53:45 +09:00
Yu Watanabe
cadb074b9c
Merge pull request #34793 from yuwata/journalctl-copy-arguments
...
journalctl: copy arguments
2024-10-17 01:52:03 +09:00
Yu Watanabe
23615aca62
doc: fix typo
...
Follow-up for b3b7cf8b7c .
2024-10-17 00:49:59 +09:00
Yu Watanabe
cd4b71b861
machine: fix typo
...
Follow-up for ad0d4f9a4c .
2024-10-17 00:48:43 +09:00
Yu Watanabe
6a6c0dab30
pidref: fix typo
...
Follow-up for de34ec188c .
2024-10-17 00:46:45 +09:00
Yu Watanabe
e776ab8e21
ukify: fix typo
...
Follow-up for 02eabaffe9 .
2024-10-17 00:44:41 +09:00
Yu Watanabe
8333badeb2
Merge pull request #34381 from DaanDeMeyer/extension-submounts
...
sysext: Deal with nested mounts properly
2024-10-17 00:11:17 +09:00
Yu Watanabe
ce2b92e8b0
journalctl: do not directly use optarg, but copy optarg before use
...
Otherwise, if the process forks child processes, then the arguments
cannot be used from them.
To avoid potential issues like the one fixed by
6d3012bab4 .
2024-10-16 23:06:42 +09:00
Yu Watanabe
d0ad4e88d4
journalctl: erase verify key before free
...
Even optarg is erased, copied string was not erased.
Let's erase the copied key for safety.
2024-10-16 20:53:57 +09:00
Yu Watanabe
c256fb06d7
Merge pull request #34756 from yuwata/test-oomd-cleanups
...
TEST-55-OOMD: several cleanups
2024-10-16 18:39:33 +09:00
Yu Watanabe
7693e8d9d0
test: fix TOCTOU in test-json
...
Follow-up for 60ae3b86fb .
Fixes CID#1563782.
2024-10-16 10:06:57 +01:00
Yu Watanabe
a6092b532e
TEST-55-OOMD: check slice property before stressing slice
2024-10-16 15:20:15 +09:00
Yu Watanabe
98a0bb8a64
TEST-55-OOMD: stop test units when unnecessary
...
Then, sleep becomes not necessary anymore. This greatly improve performance.
2024-10-16 15:18:41 +09:00
Yu Watanabe
665882f8f3
TEST-55-OOMD: check slice more in detail
...
system and user slice has same name, hence we need to check full path.
2024-10-16 15:17:31 +09:00
Yu Watanabe
6bba058076
TEST-55-OOMD: split into small testcases
...
Then, we can run each small test cases separately.
2024-10-16 15:17:11 +09:00
Yu Watanabe
23fb9b63cd
TEST-55-OOMD: check global config earlier
...
'Default Memory Pressure Duration' field in oomctl, which can be configured
with DefaultMemoryPressureDurationSec= in oomd.conf, is a global config.
Let's check it earlier.
This also drops unnecessary cleanup at the beginning.
2024-10-16 15:16:16 +09:00
Yu Watanabe
1473836a1e
TEST-55-OOMD: set ManagedOOMMemoryPressure= and friends in a drop-in config
...
Fedora and friends has a drop-in config for the settings in
/usr/lib/systemd/user/slice.d/ . Hence, settings in the main .slice may be
overridden. Let's set below in a drop-in with higher decimal prefix.
Also, rename override.conf -> 99-managed-oom-preference.conf for the same reason.
2024-10-16 14:49:56 +09:00
Yu Watanabe
5f3cfb9d5e
TEST-19-CGROUP: add test cases for IPAddressAllow=/IPAddressDeny=
2024-10-16 14:32:13 +09:00
Yu Watanabe
77bbd9f1bd
core/cgroup: fix IPAddressAllow=/IPAddressDeny= set through DBus
...
Fixes a regression caused by 84ebe6f013 (v250).
Fixes #34773 .
2024-10-16 14:31:49 +09:00
Yu Watanabe
548360817e
Merge pull request #34482 from bgurney-rh/alt-nvme-multins-symlink-fix
...
Pin obsolete NVMe symlinks to namespace 1
2024-10-16 10:05:46 +09:00
Yu Watanabe
770980bc13
Merge pull request #34781 from poettering/write-string-rename-full
...
fileio: write_string_file() naming clean-ups
2024-10-16 06:18:57 +09:00
Yu Watanabe
529fbd25a7
Merge pull request #34719 from poettering/pidref-remote
...
pidref: add explicit concept of "remote" PidRef
2024-10-16 06:15:26 +09:00
Yu Watanabe
7a3ee9217e
machine: add MachineImage interface
...
Follow-up for fb0ea6a6a3 .
Fixes #34772 .
2024-10-15 20:44:13 +09:00
Yu Watanabe
d115bd5ab4
Merge pull request #34771 from ZLima12/run0-root-working-directory
...
run: fix bug causing run0 to ignore `-D /`.
2024-10-15 20:43:47 +09:00
Yu Watanabe
a5f2609828
Merge pull request #34442 from yuwata/network-dhcp6-information-requesting-ia-pd
...
network/dhcp6: allow to request IA_PD on information requesting mode
2024-10-15 20:42:46 +09:00
Yu Watanabe
ba0d3d490f
busctl: show information of passed file descriptor
2024-10-15 19:09:38 +09:00
Yu Watanabe
60ae3b86fb
sd-json: introduce json_variant_new_fd_info()
...
Currently this is not used, but will be used later.
2024-10-15 19:09:38 +09:00
Yu Watanabe
32944d1c7a
sd-json: introduce json_variant_new_devnum() and friends
2024-10-15 19:09:38 +09:00
Yu Watanabe
28b9c823c7
fs-util: make readlink_malloc() inline
2024-10-15 19:09:38 +09:00
Yu Watanabe
c284aa7bf1
busctl: minor coding style cleanups
...
- rename output parameter of json_transform_and_append(),
- return from call() earlier to reduce indentation,
- add several missing error messages.
2024-10-15 19:09:38 +09:00
Yu Watanabe
e71b0e2ec5
network/radv: update comment
...
DHCPv6PrefixDelegation= is replaced with DHCPPrefixDelegation=.
2024-10-15 18:23:59 +09:00
Yu Watanabe
daf9f42f91
man/network: update example for router upstream interface
...
This comments out all optional settings.
2024-10-15 18:23:59 +09:00
Yu Watanabe
1918eda30d
network/dhcp6: process hostname and IA_PD on information requesting mode
...
Fixes #34299 .
2024-10-15 18:23:59 +09:00
Yu Watanabe
cf7a403e47
sd-dhcp6-lease: adjust information refresh time with lifetime of IA_PD
...
For the case when IRT is too large but lifetime of IA_PD is too short.
2024-10-15 18:23:59 +09:00
Yu Watanabe
180cc5421d
sd-dhcp6-client: allow to request IA_PD on information requesting mode
...
To support RFC 7084, WPD-4.
2024-10-15 18:23:59 +09:00
Yu Watanabe
8fead9c9e4
network/dhcp6: set hostname even if UseAddress=no
...
Follow-up for f963f8953d and
1536b7b2d0 .
2024-10-15 18:23:59 +09:00
Yu Watanabe
7860677e03
sd-dhcp6-lease: use free_and_replace_full()
2024-10-15 18:23:59 +09:00
Yu Watanabe
35c279478f
Merge pull request #34769 from yuwata/machine-by-name-or-pid
...
machine: lookup_machine_by_name_or_pid() may return 1 on error and it is already replied
2024-10-15 17:56:48 +09:00
Yu Watanabe
71a886518b
man: update documents of "_outbound" addresses
...
Follow-up for 4adf2653e2 .
Addresses https://github.com/systemd/systemd/issues/34739#issuecomment-2412904739 .
2024-10-15 09:25:13 +02:00
Yu Watanabe
1f021ce3d1
TEST-13-NSPAWN: several cleanups
...
- suppress unnecessary error messages, especially in loop and at_exit(),
- ensure the container service is stopped before restarting,
- do not send KILL signal, as garbages will remain, and disturb the next
invocation,
- drop unnecessary workaround of trying machine twice.
2024-10-15 16:16:25 +09:00
Yu Watanabe
10230b8251
machine: trivial coding style cleanups
2024-10-15 14:24:58 +09:00
Yu Watanabe
d1ac7d76b4
machine: fix memleak in vl_method_list_images()
...
Fixes an issue in fb0ea6a6a3 .
2024-10-15 14:24:58 +09:00
Yu Watanabe
d2c1451b73
machine: lookup_machine_by_name_or_pid() may return 1 on error and it is already replied
...
Follow-ups for 1bd979dddb and later
commits.
Fixes #34764 .
2024-10-15 14:24:58 +09:00
Yu Watanabe
afc5a14fca
Merge pull request #34752 from yuwata/udev-remove-database-on-remove
...
udev: remove database file on remove event
2024-10-15 13:06:00 +09:00
Yu Watanabe
11a8cb490f
Merge pull request #34736 from yuwata/network-mtu
...
network: wait for IPv6 MTU being synced to link MTU
2024-10-15 10:54:58 +09:00
Yu Watanabe
5f49e48b39
Merge pull request #34744 from yuwata/oom-cleanups
...
oom: sort output of oomctl by cgroup path
2024-10-15 10:51:50 +09:00
Yu Watanabe
49c46fbaf1
TEST-17-UDEV: check if udev database file is removed on remove event
2024-10-15 10:51:25 +09:00
Yu Watanabe
e8df18c9e1
udev: do not try to lock whole block device on remove event
...
As another device may be created with the same device node while udevd
is processing the remove event of the previous owner of the device node.
This also adds comment why we skip watching device node on remove.
2024-10-15 10:51:19 +09:00
Yu Watanabe
a104a0e2eb
Merge pull request #34755 from YHNdnzj/soft-reboot-generator-cmdline
...
core/manager: pass soft-reboot count to generators
2024-10-15 10:48:31 +09:00
Yu Watanabe
39283a1f27
network: wait for IPv6 MTU being synced to link MTU
...
The kernel resets the IPv6 MTU of an interface when its link MTU is changed.
But it seems the operation is asynchronous, and even when we detect that
the link MTU is changed, the IPv6 MTU may not be reset yet.
====
[ 2257.067613] systemd-networkd[447122]: veth99: MTU is changed: 1500 →1600 (min: 68, max: 65535)
[ 2257.067641] systemd-networkd[447122]: Setting '/proc/sys/net/ipv6/conf/veth99/mtu' to '1410'
[ 2257.067711] systemd-networkd[447122]: No change in value '1410', suppressing write
====
As you can see, even if the link MTU is changed to 1600, the IPv6 MTU is
unchanged (in this case, still 1410).
2024-10-15 06:56:06 +09:00
Yu Watanabe
7edfbf4130
network/sysctl: make link_set_ipv6_mtu() log failures
...
No functional change, just refactoring.
2024-10-15 06:53:01 +09:00
Yu Watanabe
ea684ccb6d
network/route: use sysctl_read_ip_property_int() for reading route/max_size
2024-10-15 06:52:19 +09:00
Yu Watanabe
d56d07fc1e
sysctl-util: introduce sysctl_read_ip_property_int() and _uint32()
...
Currently not used, but will be used later.
2024-10-15 06:42:12 +09:00
Yu Watanabe
5b2dce150d
udev: do not re-create database on remove event
...
Fixes a bug introduced by f6bda694f9 (v256).
With the offending commit, on remove event, database file for a device is once
removed in event_execute_rules_on_remove(), but later re-created here.
This fixes the issue, and makes the database file not re-created on remove event.
2024-10-15 06:32:39 +09:00
Yu Watanabe
d4ad878b9a
oomd-util: use FOREACH_ARRAY() more
2024-10-15 06:02:39 +09:00
Yu Watanabe
098f32e2a1
sd-radv: drop sd_radv_prefix and friends, and use sd_ndisc_option to manage NDisc options
...
No effective functional change, just refactoring.
2024-10-15 05:59:20 +09:00
Yu Watanabe
f121d8179a
Merge pull request #34738 from behrmann/ukifyoption
...
ukify: Add a config object
2024-10-15 05:58:49 +09:00
Yu Watanabe
841988f80d
TEST-13-NSPAWN: add test for 'machinectl terminate'
...
This also fixes the test for io.systemd.Machine.Terminate.
When systemd-nspawn@.service receives stop signal, then systemd-nspawn
sends SIGRTMIN+3 to the container, which was previously ignored by the
custom init script used by the container.
Let's introduce another trap for the signal, and correctly handle it.
Follow-up for 164af66f9a .
2024-10-15 05:58:25 +09:00
Yu Watanabe
c9dea52941
Merge pull request #34743 from yuwata/bus-message-dump-fd
...
bus-message-util: introduce bus_message_dump_fd() and _string()
2024-10-15 05:58:03 +09:00
Yu Watanabe
40fbde9571
Merge pull request #34745 from yuwata/local-outbounds-prefsrc
...
local-addresses: honor RTA_PREFSRC field of gateway
2024-10-15 05:57:34 +09:00
Yu Watanabe
f80d6b9304
bash-completion/busctl: support wait command
...
Follow-up for 30465af656 .
2024-10-14 09:39:38 +01:00
Yu Watanabe
81fd92809d
network/address: use config_parse_in_addr_non_null() at one more place
...
No functional change, just refactoring.
2024-10-14 08:10:35 +09:00
Yu Watanabe
6f639b2555
network/address: do not set family in config_parse_broadcast()
...
The family will be checked later in
address_section_verify() -> address_section_adjust_broadcast(),
hence it is not necessary to set here.
Follow-up for 5d15c7b19c .
Fixes oss-fuzz#372994449.
Fixes #34748 .
2024-10-14 08:10:30 +09:00
Yu Watanabe
4a7fd9d1d5
Merge pull request #34555 from rpigott/busctl-wait
...
busctl: add wait verb to wait for signals
2024-10-13 18:50:48 +09:00
Yu Watanabe
709fdcc75a
Merge pull request #34520 from vcaputo/mmap-cache-unused-min
...
mmap-cache: enforce an unused windows minimum
2024-10-13 14:48:35 +09:00