summaryrefslogtreecommitdiff
path: root/rust/kernel/interop/git@git.tavy.me:linux-stable.git
diff options
context:
space:
mode:
authorGuoHan Zhao <zhaoguohan@kylinos.cn>2026-04-07 10:24:43 +0800
committerJuergen Gross <jgross@suse.com>2026-04-10 11:04:02 +0200
commit7f8862d2873d8b0e0df805a9aef1972d8ad4f08e (patch)
tree58d868ea5a17809ac3ba10f506f5313bb82d9e86 /rust/kernel/interop/git@git.tavy.me:linux-stable.git
parentf45ab27774aadeee28f093a9f074892e9bebb586 (diff)
xen/manage: unwind partial shutdown watcher setup on error
setup_shutdown_watcher() registers shutdown_watch first, then the sysrq watch, and finally publishes the supported feature-* nodes in xenstore. If sysrq watch registration fails, or xenbus_printf() fails after one or more feature nodes were created, the function returns immediately without undoing the earlier setup. This leaves the system in a partially initialized state, with registered watches and/or stale xenstore entries despite the function reporting failure. Unwind the partial setup before returning an error by unregistering any watches that were already registered and removing feature nodes that were already published. Signed-off-by: GuoHan Zhao <zhaoguohan@kylinos.cn> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: Juergen Gross <jgross@suse.com> Message-ID: <20260407022443.12971-1-zhaoguohan@kylinos.cn>
Diffstat (limited to 'rust/kernel/interop/git@git.tavy.me:linux-stable.git')
0 files changed, 0 insertions, 0 deletions