Re: [PATCH v5 01/22] liveupdate: luo_core: luo_ioctl: Live Update Orchestrator
From: Pasha Tatashin <pasha.tatashin@soleen.com>
Date: 2025-11-13 13:56:45
Also in:
linux-doc, linux-fsdevel, linux-mm, lkml
quoted
+/** + * DOC: General ioctl format + *It seems it's not linked from Documentation/.../liveupdate.rst
It is linked: Here is uAPI: https://docs.kernel.org/next/userspace-api/liveupdate.html And also from the main Doc: https://docs.kernel.org/next/core-api/liveupdate.html There is a link in "Sea Also" section: Live Update uAPI
quoted
+ * The ioctl interface follows a general format to allow for extensibility. Each + * ioctl is passed in a structure pointer as the argument providing the size of + * the structure in the first u32. The kernel checks that any structure space + * beyond what it understands is 0. This allows userspace to use the backward + * compatible portion while consistently using the newer, larger, structures. + * + * ioctls use a standard meaning for common errnos: + * + * - ENOTTY: The IOCTL number itself is not supported at all + * - E2BIG: The IOCTL number is supported, but the provided structure has + * non-zero in a part the kernel does not understand. + * - EOPNOTSUPP: The IOCTL number is supported, and the structure is + * understood, however a known field has a value the kernel does not + * understand or support. + * - EINVAL: Everything about the IOCTL was understood, but a field is not + * correct. + * - ENOENT: A provided token does not exist. + * - ENOMEM: Out of memory. + * - EOVERFLOW: Mathematics overflowed. + * + * As well as additional errnos, within specific ioctls....quoted
--- a/kernel/liveupdate/Kconfig +++ b/kernel/liveupdate/Kconfig@@ -1,7 +1,34 @@ # SPDX-License-Identifier: GPL-2.0-only +# +# Copyright (c) 2025, Google LLC. +# Pasha Tatashin <pasha.tatashin@soleen.com> +# +# Live Update Orchestrator +# menu "Live Update and Kexec HandOver" +config LIVEUPDATE + bool "Live Update Orchestrator" + depends on KEXEC_HANDOVER + help + Enable the Live Update Orchestrator. Live Update is a mechanism, + typically based on kexec, that allows the kernel to be updated + while keeping selected devices operational across the transition. + These devices are intended to be reclaimed by the new kernel and + re-attached to their original workload without requiring a device + reset. + + Ability to handover a device from current to the next kernel depends + on specific support within device drivers and related kernel + subsystems. + + This feature primarily targets virtual machine hosts to quickly update + the kernel hypervisor with minimal disruption to the running virtual + machines. + + If unsure, say N. +Not a big deal, but since LIVEUPDATE depends on KEXEC_HANDOVER, shouldn't it go after KEXEC_HANDOVER?
Sure, I'll move them to the end of the file. Thanks, Pasha