[PATCH] powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()

Greg KH gregkh at linuxfoundation.org
Fri Dec 13 22:14:08 AEDT 2024


On Fri, Dec 13, 2024 at 11:44:22AM +0800, haixiao.yan.cn at eng.windriver.com wrote:
> From: Nathan Lynch <nathanl at linux.ibm.com>
> 
> [ Upstream commit 0974d03eb479384466d828d65637814bee6b26d7 ]
> 
> Smatch warns:
> 
>   arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential
>   spectre issue 'args.args' [r] (local cap)
> 
> The 'nargs' and 'nret' locals come directly from a user-supplied
> buffer and are used as indexes into a small stack-based array and as
> inputs to copy_to_user() after they are subject to bounds checks.
> 
> Use array_index_nospec() after the bounds checks to clamp these values
> for speculative execution.
> 
> Signed-off-by: Nathan Lynch <nathanl at linux.ibm.com>
> Reported-by: Breno Leitao <leitao at debian.org>
> Reviewed-by: Breno Leitao <leitao at debian.org>
> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
> Link: https://msgid.link/20240530-sys_rtas-nargs-nret-v1-1-129acddd4d89@linux.ibm.com
> Signed-off-by: Haixiao Yan <haixiao.yan.cn at windriver.com>
> ---
> This commit is backporting 0974d03eb479 to the branch linux-5.15.y to
> solve the CVE-2024-46774.

Now deleted, please see:
	https://lore.kernel.org/r/2024121322-conjuror-gap-b542@gregkh
for what you all need to do, TOGETHER, to get this fixed and so that I
can accept patches from your company in the future.

thanks,

greg k-h


More information about the Linuxppc-dev mailing list