On 26/01/2024 2:54 pm, Roger Pau Monne wrote: > e047b8d0fa05 went too far when limiting obtaining the vCPU pointer. While the > code in ist_dispatch_done does indeed only need the vCPU pointer when PV32 is > enabled, the !PV32 path will end up jumping into restore_all_guest which does > require rbx == vCPU pointer. > > Fix by moving the fetching of the vCPU pointer to be done outside of the PV32 > code block. > > Reported-by: Edwin Torok <[email protected]> > Fixes: e047b8d0fa05 ('x86/entry: replace two GET_CURRENT() uses') > Signed-off-by: Roger Pau Monné <[email protected]>
Reviewed-by: Andrew Cooper <[email protected]> Thanks for getting to the bottom of this. This asm code is an unwieldy mess. We need to figure out a way to simplify it.
