Re: [RFC][PATCH 0/6] x86: Fix suspend vs retbleed=stuff

From: Peter Zijlstra
Date: Fri Jan 13 2023 - 04:26:35 EST


On Fri, Jan 13, 2023 at 07:39:38AM +0000, Joan Bruguera wrote:
> Hi Peter,
>
> I tried your patches on both QEMU and my two (real) computers where
> s2ram with `retbleed=stuff` was failing and they wake up fine now.

Yay \o/

> However, I think some minor reviews are needed:
>
> (1) I got a build error due to a symbol conflict between the
> `restore_registers` in `arch/x86/include/asm/suspend_64.h` and the
> one in `drivers/gpu/drm/amd/display/dc/gpio/hw_gpio.c`.
>
> (I fixed by renaming the one in `hw_gpio.c`, but it's worth
> an `allmodconfig` just in case there's something else)

Urgh, must be my .config for not spotting that, will fix!

> (2) Tracing with QEMU I still see two `sarq $5, %gs:0x1337B33F` before
> `%gs` is restored. Those correspond to the calls from
> `secondary_startup_64` in `arch/x86/kernel/head_64.S` to
> `verify_cpu` and `sev_verify_cbit`.
> Those don't cause a crash but look suspicious, are they correct?
>
> (There are also some `sarq`s in the call to `early_setup_idt` from
> `secondary_startup_64`, but `%gs` is restored immediately before)

OK, I'll have a look, thanks!