summaryrefslogtreecommitdiffstats
path: root/units/network.target (unfollow)
Commit message (Collapse)AuthorFilesLines
2024-04-25execute: send handoff timestamps from executor to service managerLennart Poettering5-73/+113
This changes the executor to systematically send handoff timestamps to the service manager if a socket for that is supplied. This drops the code that did this via Type=exec messages, and reverts that part to the old behaviour before 93cb78aee2cff8109a5a70128287732f03d7a062. Benefits of this approach: 1. We can collect the handoff for any command we fork off, regardless if it's ExecStart= something else, regardless whether it's Type=exec, Type=simple or some any other service type, regardless of the unit type. 2. We collect both CLOCK_REALTIME and CLOCK_MONOTONIC, as we do for the other process timestamps. 3. It's entirely backwards compatible, as this doesn't change the protocol between service manager and executor, but just extends it.
2024-04-25manager: add socket for receiving handoff timestamps from forked childrenLennart Poettering4-17/+151
This adds an AF_UNIX socket pair to the manager that we can collect handoff timestamp messages on. The idea is that forked off children send a datagram with a timestamp and we use its sender PID to match it against the right forked off process. This part only implements the receiving side: a socket is created, and listened on. Received datagrams are parsed, verified and then dispatched to the interested units.
2024-04-25core: fix assertions in manager_dispatch_user_lookup_fd()Lennart Poettering1-3/+2
assert_se() should not be used here, these checks are paranoia only and have no side-effect after all. hence fix this to use assert(), or in fact ASSERT_PTR()
2024-04-25run/run: fix invocation ID handlingYu Watanabe2-5/+4
Fixes a regression introduced by 8157cc0e3e33c97b406cc088cf001ca524154f64.
2024-04-24systemctl: list-jobs: interchange 'waiting for' and 'blocking' in outputRasmus Villemoes1-2/+2
The current output of 'systemctl list-jobs' with the --after and/or --before switches seems backwards. With artificial units # check-oil.service [Unit] Description=Check the oil level Before=engine-ready.target # fill-gas.service [Unit] Description=Fill the tank with gasoline Before=engine-ready.target # engine-ready.target [Unit] Description=The engine is ready [Unit] Description=Start the engine! After=engine-ready.target Wants=engine-ready.target running 'systemctl list-jobs --before --after' produces JOB UNIT TYPE STATE 93 check-oil.service start running └─ waiting for job 94 (engine-ready.target/start) - - 102 fill-gas.service start running └─ waiting for job 94 (engine-ready.target/start) - - 94 engine-ready.target start waiting └─ waiting for job 111 (start-engine.service/start) - - └─ blocking job 93 (check-oil.service/start) - - └─ blocking job 102 (fill-gas.service/start) - - 111 start-engine.service start waiting └─ waiting for job 1 (multi-user.target/start) - - └─ blocking job 94 (engine-ready.target/start) - - Obviously, job 93 is not waiting for job 94, but rather blocking it.
2024-04-24mount,swap: include ExecStatus output in dumpLennart Poettering4-1/+31
socket and service units output there ExecCommand/ExecStatus definitions already, but this was missing in mount/swap. Fix that.
2024-04-24TEST-50-DISSECT: Skip mutable sysext tests on virtiofsDaan De Meyer1-0/+31
virtiofs cannot be used as the upper fs for overlayfs, so skip all the sysext mutable tests that would try to use virtiofs as the upper fs.
2024-04-24test: Add --debug when running mkosi through integration-test-wrapperRichard Maw1-0/+1
2024-04-24man/systemd.journal-fields: add missing OBJECT_SYSTEMD_INVOCATION_IDMike Yuan1-5/+14
2024-04-24journald-server: drop spuriously doubled '=' for OBJECT_SYSTEMD_INVOCATION_IDMike Yuan1-1/+1
2024-04-24mkosi: Build images with --debug to aid debugging in CIRichard Maw1-0/+1
2024-04-24manager: also port manager_dispatch_sigchld() to manager_get_units_for_pidref()Lennart Poettering1-34/+17
We have pretty much the same code here, let's reuse the common implementation.
2024-04-24manager: split out helper that gets Unit objects with interest in given PidRefLennart Poettering1-32/+65
This is both easier to read and allows us to reuse the helper later.
2024-04-24ci: remove packages.microsoft.comLuca Boccassi2-0/+4
It is not needed, it publishes things like dotnet, and it is often broken, so just remove the sources
2024-04-24manager: port user lookup fd serialization to serialize_fd_many()Lennart Poettering1-21/+10
2024-04-24manager: comprehensively mark manager_dispatch_user_lookup_fd() as staticLennart Poettering1-1/+1
The prototype was static, but the implementation was not. Make both static, this is otherwise too confusing. (This doesn't actually change anything, since the prototype decides about this anyway, but it makes things easier to read.)
2024-04-24capability-util: avoid thread_localLennart Poettering1-23/+24
While stracing PID1's forking off of children I noticed that every single forked off child reads cap_last_cap from procfs. That value is a kernel constant, hence we can save a lot of work if we'd cache it. Thing is, we actually do cache it, in a thread_local cache field. This means that the forked off processes (which are considered new threads) will have to re-query it, even though we already know the result. Hence, let's get rid of the thread_local stuff (given that the value is going to be the same for all threads anyway, and we pretty much have a single thread only anyway). Use an C11 atomic_int instead, which ensures the value is either initialized or not initialized, but we don't need to be concerned of partial initialization. This makes the cap_last_cap reading go away in the children, as strace shows (since cap_last_cap() is already called by PID 1 before fork()ing, anyway).
2024-04-24cryptenroll: fix typo (close parenthesis out of nowhere)Mike Yuan1-1/+1
Follow-up for 8518f4a814426e7a92342298353a4cd9508cb33b
2024-04-24manager: use startswith() return valueLennart Poettering1-3/+3
2024-04-24manager: use proper unicode arrow in dumpLennart Poettering3-6/+6
2024-04-24TEST-50-DISSECT: Use --apparent-size when calling duDaan De Meyer1-2/+2
Otherwise if the file is full of holes we get the wrong size and we'll fail later on.
2024-04-24TEST-50-DISSECT: Skip mountfsd test if the user namespace interface is not ↵Daan De Meyer1-0/+9
supported
2024-04-24core/taint: make short_uid_range() not take a pathZbigniew Jędrzejewski-Szmek1-8/+6
As requested in review.
2024-04-24core: drop unused param, move taint calculation to separate fileZbigniew Jędrzejewski-Szmek9-103/+111
Follow-up for 2b28dfe6e632f47a9058d9378fb88a0c99b34a91. I also considered moving the function to src/basic, but since it's only used by the manager, it doesn't seem useful.
2024-04-24exec-invoke: correct dont_close[] sizeLennart Poettering1-1/+3
THis needs 15 entries as far as I can count, not just 14. Follow-up for: 5686391b006ee82d8a4559067ad9818e3e631247 Sniff.
2024-04-24mkosi: Add attrDaan De Meyer1-0/+1
Required for messing around with xattrs in integration tests.
2024-04-24mkosi: Add nvme-cliDaan De Meyer1-0/+1
The nvme command is needed for TEST-84-STORAGETM.
2024-04-24mkosi: Add psmisc to opensuse for killallRichard Maw1-0/+1
2024-04-24mkosi: Add psmisc to debian-ubuntu for killallRichard Maw1-0/+1
2024-04-24mkosi: Add psmisc to arch for killallRichard Maw1-0/+1
2024-04-24test: Shut down tests on crashRichard Maw1-6/+10
If an assert in systemd fails it can't shut down normally. By default it freezes. For interactive runs we want the crash shell to enable further debugging, but during test runs we want it to exit without having to wait for the test timeout. By deactivating the crash shell, enabling reboot, and configuring qemu so that it shuts down instead of rebooting we can shut down instead. Because by default UEFI will enroll keys and then reboot we also have to set --qemu-firmware-variables=custom so it doesn't need to auto-enroll. Because mkosi has to handle not receiving an EXIT_STATUS notification it falls back to the exit code of qemu, which in the case of reboot would be 0, we also override the success exit status to 123 and check that we got that as an exit code from mkosi.
2024-04-24test: document when writable /usr overlays may be neededRichard Maw4-0/+4
2024-04-24mkosi: Update to latestRichard Maw1-1/+1
2024-04-24man: document service types that record ExecMainHandoverTimestampLuca Boccassi1-5/+6
Follow-up for 93cb78aee2cff8109a5a70128287732f03d7a062
2024-04-24po: Translated using Weblate (Georgian)Temuri Doghonadze1-1/+4
Currently translated at 100.0% (233 of 233 strings) Co-authored-by: Temuri Doghonadze <temuri.doghonadze@gmail.com> Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ka/ Translation: systemd/main
2024-04-24po: Translated using Weblate (Ukrainian)Yuri Chornoivan1-1/+5
Currently translated at 100.0% (233 of 233 strings) Co-authored-by: Yuri Chornoivan <yurchor@ukr.net> Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/uk/ Translation: systemd/main
2024-04-24po: Translated using Weblate (Turkish)Oğuz Ersen1-1/+5
Currently translated at 100.0% (233 of 233 strings) Co-authored-by: Oğuz Ersen <oguz@ersen.moe> Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/tr/ Translation: systemd/main
2024-04-24po: Translated using Weblate (Swedish)Luna Jernberg1-4/+6
Currently translated at 100.0% (233 of 233 strings) Co-authored-by: Luna Jernberg <bittin@reimu.nl> Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/sv/ Translation: systemd/main
2024-04-24network/radv: merge two boolean flags for prefix into oneYu Watanabe3-17/+14
2024-04-24sd-radv: use in6_addr_prefix_intersect()Yu Watanabe1-7/+4
2024-04-24in-addr-util: introduce in{4,6}_addr_prefix_intersect()Yu Watanabe2-35/+61
2024-04-24sd-radv: allow to send multiple routes or prefix64 that have intersection ↵Yu Watanabe1-46/+12
with others I cannot find any RFC that states we should not send multiple route prefix or pref64 options that have intersection with others. Moreover, each route prefix option has preference field, thus, user may want to send e.g. a prefix with the normal preference, and another sub prefix with the high preference. Previously, such configuration was prohibited. Let's allow that now.
2024-04-24sd-radv: send RA on update in caller sideYu Watanabe2-42/+10
As the caller may want to update multiple prefixes and friends. Let's not automatically announce on update in library side. Currently, only prefix is updated during running. Hence, this does not change any effective behavior.
2024-04-24core/manager: add unmerged-bin taintMike Yuan3-6/+20
2024-04-24core/manager: rearrange taint tagsMike Yuan3-22/+32
2024-04-24core/manager: drop obsolete cgroup taint stringMike Yuan3-16/+3
Wwe can't boot on systems without cgroup anyway (even cgroup v1 will be gone pretty soon).
2024-04-24mount-setup: use mount_verbose_full where appropriateMike Yuan1-4/+1
2024-04-23Add self-contained Python sd_notify example.Simon Fowler2-4/+118
This complements the existing C example.
2024-04-23sysext: do not return 0 if `unmerge()` fails in the `refresh()` function.Antonio Alvarez Feijoo1-1/+1
Actually, return the result of `unmerge()` if it is called in the `refresh()` function. Fixes 8662fcbcf1f31725998bd1ebe706ac813b053962
2024-04-23update NEWSLennart Poettering1-0/+7