summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #34681 from ↵Lennart Poettering2024-10-1113-44/+123
|\ | | | | | | | | ikruglov/ikruglov/io-systemd-Machine-post-merge-review machine: address post-merge review #34623
| * machine: use sd_json_dispatch_pid() in varlink codeIvan Kruglov2024-10-103-9/+10
| |
| * sd-json: add sd_json_dispatch_pid()Ivan Kruglov2024-10-104-0/+52
| |
| * machine: switch to use PidRef when lookup machine by pid in dbus and varlink ↵Ivan Kruglov2024-10-105-20/+21
| | | | | | | | | | | | | | interfaces This commit includes adding introduce manager_get_machine_by_pidref() as a replacement for manager_get_machine_by_pid() and moving surrounding code to utilise PidRef.
| * machine: use sd_json_dispatch_signal() in varlink codeIvan Kruglov2024-10-101-4/+1
| |
| * sd-json: add sd_json_dispatch_signal()Ivan Kruglov2024-10-104-0/+27
| |
| * machine: remove redundant else if lookup_machine_by_name_or_pid()Ivan Kruglov2024-10-101-1/+1
| |
| * machine: complete description of io.systemd.Machine.{List, Terminate, Kill, ↵Ivan Kruglov2024-10-101-10/+11
| | | | | | | | Unregister} methods
* | seccomp: allowlist uretprobe() syscallLennart Poettering2024-10-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a new syscall provided by the kernel used to implement faster uprobes. It's not supposed to be called by userspace, but only by kernel generated uprobe code. It should be fine to allow this, as the kernel authenticates the invocation itself, and we shouldn't break compat with things. Note that this allowlisting is not sufficient to make ureprobe() work. libseccomp must be tought the syscall too, but this can happen independently. Fixes: #34615
* | Merge pull request #34707 from YHNdnzj/user-manager-reexecDaan De Meyer2024-10-115-34/+20
|\ \ | | | | | | core: fix STATUS=Ready for user manager; units/user@.service: issue daemon-reexec when notify-reloading
| * | rpm/systemd-update-helper: Use systemctl reload to reexec/reload user managersDaan De Meyer2024-10-111-16/+4
| | | | | | | | | | | | | | | | | | | | | Let's always use systemctl reload to reexec and reload user managers now that it always implies a reexec. This moves all the job management logic to pid 1 instead of bash and reduces the complexity of the logic as we remove systemd-run, pam and systemd-stdio-bridge from the equation.
| * | units/{user,capsule}@.service: issue daemon-reexec when notify-reloadingMike Yuan2024-10-112-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #28367 (but not really in the exact form, see below) We have the problem of restarting all user manager instances after upgrade. Current approaches involve systemctl kill with SIGRTMIN+25, which is async and feels rather ugly [1][2]; or systemctl --machine=user@ --user, which requires entering each user session. Neither is particularly elegant. Instead, let's just signal daemon-reexec when user@.service is reloaded from system manager. Our long goal of dropping daemon-reload in favor of reexec (see TODO) is unlikely to happen due to user dbus restrictions, but here the synchronization is done via READY=1. [1] https://gitlab.archlinux.org/archlinux/packaging/packages/systemd/-/blob/main/systemd.install?ref_type=heads#L37 [2] https://salsa.debian.org/systemd-team/systemd/-/blob/debian/master/debian/systemd.postinst#L24 #28367 would not really work for us now I come to think about it, because all processes will be reparented to pid1 as soon as original user manager process exits. This alternative approach seems good enough for our use case.
| * | core/manager-serialize: drop serialization for Manager.ready_sentMike Yuan2024-10-111-11/+1
| | | | | | | | | | | | | | | | | | | | | | | | This field indicates whether READY=1 has been sent to the service manager/supervisor. Whenever we reload/reexec/soft-reboot, manager_send_reloading() always resets it to false first, so that READY=1 is sent after reloading finishes. Hence we utterly get "false" at all times. Kill it.
| * | core/manager: still send out STATUS=Ready for user managerMike Yuan2024-10-111-7/+7
|/ / | | | | | | | | | | | | | | This effectively reverts 37d15cd132f3a8a0bf42fb252c1604e804171ff2. The offending commit wrongly assumed that the second READY=1 notification is for system scope only, but it also serves the purpose of flushing out previous STATUS= containing user unit job status.
* | udev: allow persistent storage rules for ublk devicesUday Shankar2024-10-112-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tools such as lsblk which query the udev database instead of probing devices directly fail when run on ublk devices. For instance, in the following commands, the partition type is missing, despite the fact that /dev/ublkb0 was just partitioned with a single Linux filesystem type partition. $ lsblk /dev/ublkb0 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS ublkb0 259:0 0 31.3G 0 disk └─ublkb0p1 259:1 0 31.2G 0 part $ lsblk -o pkname,parttype /dev/ublkb0 PKNAME PARTTYPE ublkb0 This happens because ublk devices are missing from a couple of whitelists in the udev rules which are responsible for populating the database with the data lsblk is looking for. Add the ublk devices to these whitelists.
* | docs/DESKTOP_ENVIRONMENTS: fix formattingDavid Rheinsberg2024-10-111-3/+3
| | | | | | | | | | | | The annotation about omittance is meant to be about the `RANDOM` string. However, the current formatting makes it look like the entire naming scheme is optional. Fix this.
* | docs: don't mention split-usr path anymoreLennart Poettering2024-10-111-1/+1
| | | | | | | | | | | | | | We don't support split /usr/ anymore. Hence fix the paths. This apparently matters because of PK validating the binary path. Fixes: #34712
* | mkosi: fix sections for settingsYu Watanabe2024-10-111-1/+3
| | | | | | | | Follow-up for 963157ca78429c51feb3103828d8cc94440956f3.
* | Merge pull request #34699 from yuwata/netlink-cleanupsYu Watanabe2024-10-1011-1207/+464
|\ \ | | | | | | sd-netlink: several cleanups
| * | sd-netlink: introduce two more _get_family()Yu Watanabe2024-10-102-44/+16
| | | | | | | | | | | | Then, use them in sd_rtnl_message_get_family().
| * | sd-netlink,network: rename functions and RoutingPolicyRule.typeYu Watanabe2024-10-106-42/+42
| | | | | | | | | | | | | | | To make them consistent to the netlink message header. No functional change, just refactoring.
| * | sd-netlink: introduce macros to define sd_rtnl_message setters and gettersYu Watanabe2024-10-101-807/+139
| | |
| * | sd-netlink: make size verifier in sd_netlink_message_read_xyz() stricterYu Watanabe2024-10-102-142/+90
| | | | | | | | | | | | Also, fill remaining output buffer with zero, for safety.
| * | sd-netlink: shorten sd_netlink_message_read_string_strdup() a bitYu Watanabe2024-10-101-17/+3
| | |
| * | sd-netlink: various cleanupsYu Watanabe2024-10-106-302/+321
|/ / | | | | | | | | | | | | - use uint8_t, uint16_t, and so on, rather than unsigned char, unsigned short, and so on, respectively, - rename output parameters to ret or ret_xyz, - add several missing assertions.
* | man: reword comment a bit regarding ExecStartPre= multiple commandsLennart Poettering2024-10-101-8/+8
| | | | | | | | | | | | | | | | | | | | | | The documentation claimed that ExecStartPre=/ExecStartPost= accepts multiple command lines, in contrast to ExecStart=. This is half an untruth, because ExecStart= allows that too – as long as Type=oneshot is set. Hence, reword this a bit, and do not emphasize the contrast. Prompted by: #34570
* | ukify: Fix systemd-measure detection in testsJörg Behrmann2024-10-101-2/+6
| | | | | | | | Fixes: 206fa93c854e3d5c94e56da9b53e107245f31503
* | Merge pull request #34684 from yuwata/login-scheduled-shutdownYu Watanabe2024-10-101-23/+45
|\ \ | |/ |/| login: allow to cancel delayed action by CancelScheduledShutdown()
| * logind: add comment why we save action in execute_shutdown_or_sleep()Yu Watanabe2024-10-091-2/+5
| | | | | | | | | | When I first read the code, I was confused about that. Hopefully, this helps maintain code a bit.
| * login: use event_reset_time_relative() at one more placeYu Watanabe2024-10-091-17/+7
| |
| * login: provide delayed action in ScheduledShutdown propertyYu Watanabe2024-10-091-4/+17
| | | | | | | | | | | | | | Even though we can get the existence of delayed action through PreparingForShutdownWithMetadata property or friends, for consistency with CancelScheduledShutdown() method, it is better to also provide the information through ScheduledShutdown property.
| * login: allow to cancel delayed action by CancelScheduledShutdown()Yu Watanabe2024-10-091-0/+16
| | | | | | | | Fixes #34554.
* | sd-event: rename output parameters to retYu Watanabe2024-10-1010-67/+67
| |
* | machined: use sd_json_dispatch_uint() when parsing CIDLennart Poettering2024-10-101-15/+15
| | | | | | | | | | This is preferable, because we will accept CIDs encoded as strings too now, as we do for all other integers. Also, it's shorter. Yay!
* | ukify: fix return value type of resolve_at_path()Yu Watanabe2024-10-101-1/+1
| | | | | | | | Follow-up for eca003de2f3a708c44946d36af6517cbcf3392ff.
* | network/dhcp4: add support for ARPHRD_RAWIP and ARPHRD_NONE network ↵Darsey Litzenberger2024-10-102-2/+33
| | | | | | | | | | | | | | interface types This should fix QMI wwan modems, as noted in https://github.com/systemd/systemd/issues/27219
* | repart: fix typoYu Watanabe2024-10-091-1/+1
| | | | | | | | Follow-up for d3032e651e2131c47d276e3fbdcbdf9fc51c8ef9.
* | core/mount: fix typoYu Watanabe2024-10-091-1/+1
| | | | | | | | Follow-up for 00ad3f02275b507a753495ace5e5f84cb38b604d.
* | Merge pull request #34687 from DaanDeMeyer/mkosiYu Watanabe2024-10-0931-139/+86
|\ \ | | | | | | Various fixes
| * | mkosi: Fix sections for settingsDaan De Meyer2024-10-0913-19/+27
| | | | | | | | | | | | | | | Upstream we moved settings around a bit to different sections, let's adapt to those changes in the systemd repo.
| * | mkosi: Update to latestDaan De Meyer2024-10-092-1/+5
| | |
| * | mkosi: Remove particle profileDaan De Meyer2024-10-0911-81/+0
| | | | | | | | | | | | | | | We have https://github.com/systemd/particleos for testing the particle stuff so let's drop it from the systemd repo as it's bit rotting.
| * | efi-loader: Add @ to valid charactersDaan De Meyer2024-10-091-1/+1
| | | | | | | | | | | | | | | This is now a valid character with the introduction of multi UKI profiles, so update the function to allow it.
| * | boot: Introduce file_size and use it when we're working with file_offsetDaan De Meyer2024-10-093-8/+15
| | | | | | | | | | | | | | | When we're reading a section from disk, use file_size to use the size on disk instead of the size in memory.
| * | boot: Rename pe section size to memory_sizeDaan De Meyer2024-10-094-27/+27
| | | | | | | | | | | | | | | Let's clearly indicate this is the size in memory and not the size on disk, these two are not guaranteed to be the same.
| * | ukify: Read .profile from path starting with @Daan De Meyer2024-10-091-0/+2
| | |
| * | ukify: Introduce resolve_at_path()Daan De Meyer2024-10-091-6/+13
| | |
| * | ukify: Fix off by one errorDaan De Meyer2024-10-091-1/+1
| | | | | | | | | | | | We weren't measuring the profile section itself.
* | | stub: reindent linesYu Watanabe2024-10-091-4/+4
| | | | | | | | | | | | Follow-up for 2ea0487c1be4203ba3664d249418317846f55c1a.
* | | Merge pull request #34665 from poettering/fastopen-fallbackYu Watanabe2024-10-091-6/+10
|\ \ \ | |/ / |/| | resolved: fix MSG_FASTOPEN fallback logic