[PATCH v3 01/22] arm64: Add macros to read/write system registers
Marc Zyngier
marc.zyngier at arm.com
Mon Dec 7 09:51:55 PST 2015
On 07/12/15 17:45, Mark Rutland wrote:
> On Mon, Dec 07, 2015 at 05:35:20PM +0000, Catalin Marinas wrote:
>> On Mon, Dec 07, 2015 at 10:53:17AM +0000, Marc Zyngier wrote:
>>> From: Mark Rutland <mark.rutland at arm.com>
>>>
>>> Rather than crafting custom macros for reading/writing each system
>>> register provide generics accessors, read_sysreg and write_sysreg, for
>>> this purpose.
>>>
>>> Unlike read_cpuid, calls to read_exception_reg are never expected
>>> to be optimized away or replaced with synthetic values.
>>
>> What's read_exception_reg? Is it a macro somewhere?
>
> That was what read_sysreg used to be called on a local branch of mine. I
> didn't spot that when reworking the patch.
>
> So s/read_exception_reg/read_sysreg/ here.
>
>>> +#define read_sysreg(r) ({ \
>>> + u64 __val; \
>>> + asm volatile("mrs %0, " __stringify(r) : "=r" (__val)); \
>>> + __val; \
>>> +})
>>
>> And maybe a comment here on why this is always volatile.
>
> Makes sense to me.
>
> Marc, are you happy to turn the last sentence from the commit message
> into a comment here (with the substitution)?
Sure, I'll update the patch and push the branch out again, together with
Catalin's Ack.
Thanks,
M.
--
Jazz is not dead. It just smells funny...
More information about the linux-arm-kernel
mailing list