Re: [PATCH v7 01/22] liveupdate: luo_core: Live Update Orchestrator
From: Mike Rapoport <rppt@kernel.org>
Date: 2025-11-23 11:12:35
Also in:
linux-doc, linux-fsdevel, linux-mm, lkml
On Sat, Nov 22, 2025 at 05:23:28PM -0500, Pasha Tatashin wrote:
Introduce LUO, a mechanism intended to facilitate kernel updates while keeping designated devices operational across the transition (e.g., via kexec). The primary use case is updating hypervisors with minimal disruption to running virtual machines. For userspace side of hypervisor update we have copyless migration. LUO is for updating the kernel. This initial patch lays the groundwork for the LUO subsystem. Further functionality, including the implementation of state transition logic, integration with KHO, and hooks for subsystems and file descriptors, will be added in subsequent patches. Create a character device at /dev/liveupdate. A new uAPI header, <uapi/linux/liveupdate.h>, will define the necessary structures. The magic number for IOCTL is registered in Documentation/userspace-api/ioctl/ioctl-number.rst. Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com> Reviewed-by: Pratyush Yadav <pratyush@kernel.org>
Reviewed-by: Mike Rapoport (Microsoft) <rppt@kernel.org> with a few nits below
---
quoted hunk ↗ jump to hunk
diff --git a/kernel/liveupdate/Kconfig b/kernel/liveupdate/Kconfig index a973a54447de..90857dccb359 100644 --- a/kernel/liveupdate/Kconfig +++ b/kernel/liveupdate/Kconfig@@ -1,4 +1,10 @@ # SPDX-License-Identifier: GPL-2.0-only +# +# Copyright (c) 2025, Google LLC. +# Pasha Tatashin <pasha.tatashin@soleen.com> +# +# Live Update Orchestrator +#
If you are adding copyrights it should have Amazon and Microsoft as well. I believe those from kexec_handover.c would work. @Alex?
quoted hunk ↗ jump to hunk
menu "Live Update and Kexec HandOver" depends on !DEFERRED_STRUCT_PAGE_INIT@@ -51,4 +57,25 @@ config KEXEC_HANDOVER_ENABLE_DEFAULT The default behavior can still be overridden at boot time by passing 'kho=off'. +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.
Sorry, somehow this slipped during v6 review. These days LUO is less about devices and more about file descriptors :)
+ + 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. + endmenu
-- Sincerely yours, Mike.