On 11/01/2024 3:49 pm, Jan Beulich wrote: > On 11.01.2024 16:24, Andrew Cooper wrote: >> On 11/01/2024 12:11 pm, Jan Beulich wrote: >> It does occur to me that we're trying to accommodate for two behaviours >> here. >> >> For a real keypress, we want to dump from the the point the interrupt >> hit because that's the interesting bit of stack to see. For a SYSCTL, >> there's nothing, and we're using BUGFRAME_run_fn to generate one. > There's three forms of handle_keypress() invocations really, and hence > why (after having dropped the regs parameter already) I re-instated it.
Ok. As you've done this analysis work, can you list these 3 forms? I've clearly missed one in my analysis. > > As an aside - no, sysctl handling does not generate an exception frame. > Is uses guest_cpu_user_regs() (and imo validly so). > >> So actually we just simply want "regs = get_irq_regs();" here and retain >> prior NULL check, don't we? > As per above, after I had it that way first, I backed off to accommodate > all present use forms of handle_keypress(). But dealing with that (in > whichever way we may end up deeming workable) can be separate anyway, > afaict. When complexity is involved, I always prefer to make changes in smaller chunks. ~Andrew