Re: [PATCH] selftests: kvm: remove reassignment of non-absolute variables

Sean Christopherson
2020-12-11T00:51:51Z

On Wed, Dec 09, 2020, Bill Wendling wrote:
> Clang's integrated assembler does not allow symbols with non-absolute
> values to be reassigned. Modify the interrupt entry loop macro to be
> compatible with IAS by using a label and an offset.
>
> Cc: Jian Cai <caij2003@gmail.com>
> Signed-off-by: Bill Wendling <morbo@google.com>
> References: https://lore.kernel.org/lkml/20200714233024.1789985-1-caij2003@gmail.com/
> ---
> tools/testing/selftests/kvm/lib/x86_64/handlers.S | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/testing/selftests/kvm/lib/x86_64/handlers.S b/tools/testing/selftests/kvm/lib/x86_64/handlers.S
> index aaf7bc7d2ce1..3f9181e9a0a7 100644
> --- a/tools/testing/selftests/kvm/lib/x86_64/handlers.S
> +++ b/tools/testing/selftests/kvm/lib/x86_64/handlers.S
> @@ -54,9 +54,9 @@ idt_handlers:
> .align 8
>
> /* Fetch current address and append it to idt_handlers. */
> - current_handler = .
> +0 :
> .pushsection .rodata
> -.quad current_handler
> + .quad 0b

Bit of a silly nit: can we use a named label, or at least a non-zero shorthand?
It's really easy to misread "0b" as zeroing out the value, at least for me.

> .popsection
>
> .if ! \has_error
> --
> 2.29.2.576.ga3fc446d84-goog
>