Skip to content

Commit 307e0c5

Browse files
leotimmins1974akpm00
authored andcommitted
liveupdate: propagate file deserialization failures
luo_session_deserialize() ignored the return value from luo_file_deserialize(). As a result, a session could be left partially restored even though the /dev/liveupdate open path treats deserialization failures as fatal. Propagate the error so a failed file deserialization aborts session deserialization instead of silently continuing. Link: https://lkml.kernel.org/r/20260325044608.8407-1-leotimmins1974@gmail.com Link: https://lkml.kernel.org/r/20260325044608.8407-2-leotimmins1974@gmail.com Fixes: 16cec0d ("liveupdate: luo_session: add ioctls for file preservation") Signed-off-by: Leo Timmins <leotimmins1974@gmail.com> Reviewed-by: Pasha Tatashin <pasha.tatashin@soleen.com> Reviewed-by: Pratyush Yadav <pratyush@kernel.org> Cc: Mike Rapoport <rppt@kernel.org> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 parent f58df56 commit 307e0c5

1 file changed

Lines changed: 7 additions & 2 deletions

File tree

kernel/liveupdate/luo_session.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -558,8 +558,13 @@ int luo_session_deserialize(void)
558558
}
559559

560560
scoped_guard(mutex, &session->mutex) {
561-
luo_file_deserialize(&session->file_set,
562-
&sh->ser[i].file_set_ser);
561+
err = luo_file_deserialize(&session->file_set,
562+
&sh->ser[i].file_set_ser);
563+
}
564+
if (err) {
565+
pr_warn("Failed to deserialize files for session [%s] %pe\n",
566+
session->name, ERR_PTR(err));
567+
return err;
563568
}
564569
}
565570

0 commit comments

Comments
 (0)