[PATCH v6 06/26] KVM: arm/arm64: Do not use kern_hyp_va() with kvm_vgic_global_state

Marc Zyngier marc.zyngier at arm.com
Fri Mar 16 04:51:32 PDT 2018


On 16/03/18 11:38, Ard Biesheuvel wrote:
> On 16 March 2018 at 11:35, Andrew Jones <drjones at redhat.com> wrote:
>> On Fri, Mar 16, 2018 at 09:31:57AM +0000, Marc Zyngier wrote:
>>> On 15/03/18 19:16, James Morse wrote:
>>>>
>>>> (I had a go at using 'Ush', to let the compiler schedule the adrp, but couldn't
>>>> get it to work.)
>>>
>>> I tried that as well at some point, but couldn't see how to use it. The
>>> compiler was never happy with my use of the constraints, so I gave up
>>> and did it my way...
>>>
>>
>> What's 'Ush'? I tried to search for it, but came up short. I'm wondering
>> what things I can try (and fail) to use it on too :-)
>>
> 
> https://gcc.gnu.org/onlinedocs/gccint/Machine-Constraints.html

I was hoping that something like:

	asm("add %0, %1, :lo12:%2" : "=r" (addr) : "Ush" (&s), "S" (&s))

would do the right thing (generating an ADRP), but all I managed was to
get the compiler shouting at me (in a rather unhelpful manner).

I guess I could have looked into the GCC source code to find out how to
use this thing, but life is short.

	M.
-- 
Jazz is not dead. It just smells funny...



More information about the linux-arm-kernel mailing list