[PATCH 7/8] powerpc/rtas: warn on unsafe argument to rtas_call_unlocked()
Nathan Lynch
nathanl at linux.ibm.com
Thu Mar 23 23:17:05 AEDT 2023
Andrew Donnellan <ajd at linux.ibm.com> writes:
> On Mon, 2023-03-06 at 15:33 -0600, Nathan Lynch via B4 Relay wrote:
>> From: Nathan Lynch <nathanl at linux.ibm.com>
>>
>> Any caller of rtas_call_unlocked() must provide an rtas_args
>> parameter
>> block distinct from the core rtas_args buffer used by the rtas_call()
>> path. It's an unlikely error to make, but the potential consequences
>> are grim, and it's trivial to check.
>>
>> Signed-off-by: Nathan Lynch <nathanl at linux.ibm.com>
>
> call_rtas_display_status() seems to do exactly this, or am I missing
> something?
No you're right, the warning would be spurious in that case. May need to
drop this one, or refactor rtas_call():
4456f4524604be2558e5f6a8e0f7cc9ed17c783e
Author: Michael Ellerman <mpe at ellerman.id.au>
AuthorDate: Tue Nov 24 22:26:11 2015 +1100
powerpc/rtas: Use rtas_call_unlocked() in call_rtas_display_status()
Although call_rtas_display_status() does actually want to use the
regular RTAS locking, it doesn't want the extra logic that is in
rtas_call(), so currently it open codes the logic.
Instead we can use rtas_call_unlocked(), after taking the RTAS lock.
aside: does anyone know if the display_status() code is worth keeping?
It looks like it is used to drive the 16-character wide physical LCD I
remember seeing on P4-era and older machines. Is it a vestige of
non-LPAR pseries that should be dropped, or is it perhaps useful for
chrp or cell?
More information about the Linuxppc-dev
mailing list