STRUCT LIVEUPDATE_SESSION_FINISH(9)
π NAME
struct liveupdate_session_finish β bestie, this is the struct for the ioctl(LIVEUPDATE_SESSION_FINISH) β¨
(also hi, you're reading the Kernel API Manual, welcome to the group chat π«Ά)
πΈ SYNOPSIS
struct liveupdate_session_finish {
__u32 size;
__u32 reserved;
};
the members, babes
sizeβ Input;sizeof(struct liveupdate_session_finish)π you literally just tell it how big you are. self-awareness slay.reservedβ Input; must be zero. Reserved for future use. fr fr, zero. not "zero-ish." zero. π«
β¨ Description β¨
Okay so picture this: the restoration process for a retrieved session is DONE, and this ioctl is the little "we're so back β " signal that says so. It's the final operation you should perform on a session file descriptor after a live update β like, the last thing. the periodt of the whole saga π
The way this works: you call this ioctl once all the required file descriptors for the session have been successfully retrieved (that's via LIVEUPDATE_SESSION_RETRIEVE_FD, iykyk) and they're fully restored from the userspace and kernel perspective. Both. Everyone has to be caught up before you hit send. no leaving anyone on read π
Upon success, the kernel releases its ownership of the preserved resources associated with this session π That's what lets internal resources get freed β typically by decrementing reference counts on the underlying preserved objects. Ref counts go brrr downward. iconic.
β οΈ okay but listen: if this operation fails, the resources remain preserved in memory. Nothing gets freed. Your options are: userspace may attempt to call finish again π β or the resources will otherwise be reset during the next live update cycle. So it's not the end of the world, but it is a "text them again" situation π
π¦ Return
0on success π- negative error code on failure π
π SEE ALSO
- Kernel file
./include/uapi/linux/liveupdate.h - General ioctl format(9)
struct liveupdate_ioctl_create_session(9)struct liveupdate_ioctl_retrieve_session(9)struct liveupdate_session_preserve_fd(9)struct liveupdate_session_retrieve_fd(9)struct liveupdate_session_get_name(9)
go read them, they're all main characters too π
β and that's the whole page bestie! sourced straight from ./include/uapi/linux, dated October 2026, filed under struct liveu...ssion_finish(9) β mwah, study up and stay hydrated ππ§π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms