[RFC v6 21/62] powerpc: introduce execute-only pkey

Michael Ellerman mpe at ellerman.id.au
Tue Aug 1 16:46:22 AEST 2017


Thiago Jung Bauermann <bauerman at linux.vnet.ibm.com> writes:
> Ram Pai <linuxram at us.ibm.com> writes:
...
>> +
>> +	/* We got one, store it and use it from here on out */
>> +	if (need_to_set_mm_pkey)
>> +		mm->context.execute_only_pkey = execute_only_pkey;
>> +	return execute_only_pkey;
>> +}
>
> If you follow the code flow in __execute_only_pkey, the AMR and UAMOR
> are read 3 times in total, and AMR is written twice. IAMR is read and
> written twice. Since they are SPRs and access to them is slow (or isn't
> it?),

SPRs read/writes are slow, but they're not *that* slow in comparison to
a system call (which I think is where this code is being called?).

So we should try to avoid too many SPR read/writes, but at the same time
we can accept more than the minimum if it makes the code much easier to
follow.

cheers


More information about the Linuxppc-dev mailing list