On 16 December 2024 16:00:00 GMT, "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> wrote: >David Woodhouse <dwmw2@xxxxxxxxxxxxx> writes: > >> On Mon, 2024-12-16 at 14:39 +0100, Rafael J. Wysocki wrote: >>> From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> >>> >>> The KEXEC_JUMP flow is analogous to hibernation flows occurring >>> before >>> and after creating an image and before and after jumping from the >>> restore kernel to the image one, which is why it uses the same device >>> callbacks as those hibernation flows. >>> >>> Add comments explaining that to the code in question and update an >>> existing comment in it which appears a bit out of context. >>> >>> No functional changes. >>> >>> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> >> >> Thanks. I'll round that up into my kexec-debug tree, which Ingo has >> been taking into tip/x86/boot. Once I'm done fighting with >> objtool(qv). > >I have no objection to getting kexec jump more in sync with the >rest of the power management code. > >I do have a question though. Does anyone actually use kexec jump? > >It is fine if folks do, but I haven't actually heard of anyone using >it. If folks aren't using it, it might make sense to just use the fact >that it is broken as a nudge to remove that option. > >Eric > > > It isn't broken. I know of it being used a few million times a week. There are corner cases which have never worked right, like the callee putting a different return address for its next invocation, on the stack *above* the address it 'ret's to. Which since the first kjump patch has been the first word of the page *after* the swap page (and is now fixed in my tree). But fundamentally it *does* work. I only started messing with it because I was working on relocate_kernel() and needed to write a test case for it; the fact that I know of it being used in production is actually just a coincidence.