[PATCH v1 0/3] liveupdate: serialization safety and race fixes
Pasha Tatashin
pasha.tatashin at soleen.com
Tue May 5 21:32:01 PDT 2026
This series addresses several issues related to the synchronization between
the reboot process and LUO session management.
1. Skip serialization for context-preserving kexec:
A preserve_context kexec returns to the current kernel, which is
unrelated to live update where state is passed to the next kernel.
Skipping serialization avoids unnecessary work and prevents sessions
from being left in a frozen state upon return.
2. Block session mutations during serialization:
Once serialization has started, no new outgoing session mutations
(creations or file preservations) should occur. A 'rebooting' flag
is introduced to ensure this.
3. Pin sessions and handle inactive ones:
Ensures that outgoing sessions are pinned by taking a reference to
their struct file during serialization. This prevents race conditions
where a user process might close a session while it is being
serialized. Inactive sessions are cleaned up and removed.
Tree: git.kernel.org/pub/scm/linux/kernel/git/tatashin/linux.git
Branch: luo-reboot-sync/v1
Pasha Tatashin (3):
liveupdate: skip serialization for context-preserving kexec
liveupdate: block outgoing session mutations during serialization
liveupdate: pin sessions and handle inactive ones during serialization
kernel/kexec_core.c | 8 +--
kernel/liveupdate/luo_internal.h | 1 +
kernel/liveupdate/luo_session.c | 90 ++++++++++++++++++++++++++++++--
3 files changed, 91 insertions(+), 8 deletions(-)
base-commit: 7b0b68b2b95606e65594958686833e53423f58f2
--
2.54.0.545.g6539524ca2-goog
More information about the kexec
mailing list