51 lines · 1.8 KB · Text
RawDownload
.. SPDX-License-Identifier: GPL-2.0 ================Live Update uAPI================:Author: Pasha Tatashin <pasha.tatashin@soleen.com> ioctl interface===============.. kernel-doc:: kernel/liveupdate/luo_core.c   :doc: LUO ioctl Interface ioctl uAPI===========.. kernel-doc:: include/uapi/linux/liveupdate.h Note on Compatibility===================== Note that the Live Update feature is still under development and subject tochange, so compatibility is not guaranteed when kexec rebooting betweendifferent kernel versions. This is expected to change and stabilize in a futureversion. Userspace Integration===================== systemd (since version v261) uses LUO to preserve its per-service filedescriptor store across a kexec-based live update. Services opt in by setting``FileDescriptorStoreMax=`` and ``FileDescriptorStorePreserve=`` in their unit,and push file descriptors with a name into the store via``sd_pid_notify_with_fds(... "FDSTORE=1\nFDNAME=foo")``. Services may also create their own LUO sessions (via ``/dev/liveupdate``) andpush the resulting session fds into their file descriptor store like any otherfd. systemd detects such session fds and handles them accordingly, andhands the re-retrieved session fd back to the service after kexec, using theexisting file descriptor store service interface. For details, see: - `File Descriptor Store <https://systemd.io/FILE_DESCRIPTOR_STORE/>`_- `systemd.service(5) FileDescriptorStorePreserve=  <https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#FileDescriptorStorePreserve=>`_- `sd_pid_notify_with_fds(3)  <https://www.freedesktop.org/software/systemd/man/latest/sd_pid_notify_with_fds.html>`_ See Also======== - :doc:`Live Update Orchestrator </core-api/liveupdate>`