From: Sean Christopherson <seanjc@google.com>
To: Bill Wendling <morbo@google.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
linux-kselftest@vger.kernel.org, kvm list <kvm@vger.kernel.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Shuah Khan <shuah@kernel.org>, Jian Cai <caij2003@gmail.com>
Subject: Re: [PATCH] selftests: kvm: remove reassignment of non-absolute variables
Date: Thu, 10 Dec 2020 17:07:11 -0800 [thread overview]
Message-ID: <X9LGPwstuFU1HzRT@google.com> (raw)
In-Reply-To: <CAGG=3QW4cQ958DfQBg18qxwGg7s6A6Uxjv=WfVQjWD4HW32LRA@mail.gmail.com>
On Thu, Dec 10, 2020, Bill Wendling wrote:
> On Thu, Dec 10, 2020 at 4:50 PM Sean Christopherson <seanjc@google.com> wrote:
> >
> > 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.
> >
> I don't believe that will work. If I rename "0 :" to something more
> concrete, like ".Lcurrent :", then the label's redefined because of
> the ".rept". If I assign the "0b" to something, we're back with the
> unmodified code, which clang issues an error for:
>
> <instantiation>:3500:6: error: invalid reassignment of non-absolute variable 'x'
> x = 0b
> ^
> <instantiation>:2:2: note: while in macro instantiation
> .rept 255 - 18 + 1
Boo. I assume 1: and 1b work? Or my KVM favorite "666:" :-) That's enough to
at least make me pause and actually read the code.
> ^
>
> > > .popsection
> > >
> > > .if ! \has_error
> > > --
> > > 2.29.2.576.ga3fc446d84-goog
> > >
next prev parent reply other threads:[~2020-12-11 1:09 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-10 4:36 [PATCH] selftests: kvm: remove reassignment of non-absolute variables Bill Wendling
2020-12-11 0:50 ` Sean Christopherson
2020-12-11 1:04 ` Bill Wendling
2020-12-11 1:07 ` Sean Christopherson [this message]
2020-12-11 1:10 ` Bill Wendling
2020-12-11 1:19 ` Sean Christopherson
2020-12-11 1:23 ` [PATCH v2] " Bill Wendling
2021-05-03 18:37 ` Jim Mattson
2021-05-04 7:22 ` Paolo Bonzini
2020-12-11 1:36 ` [PATCH] " Jim Mattson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=X9LGPwstuFU1HzRT@google.com \
--to=seanjc@google.com \
--cc=benh@kernel.crashing.org \
--cc=caij2003@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=morbo@google.com \
--cc=pbonzini@redhat.com \
--cc=shuah@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.