[v2,1/3] selftests/powerpc: Allocate base registers

Michael Ellerman patch-notifications at ellerman.id.au
Tue Nov 27 20:22:21 AEDT 2018


On Wed, 2018-10-31 at 14:38:20 UTC, Breno Leitao wrote:
> Some ptrace selftests are passing input operands using a constraint that
> can allocate any register for the operand, and using these registers on
> load/store operations.
> 
> If the register allocated by the compiler happens to be zero (r0), it might
> cause an invalid memory address access, since load and store operations
> consider the content of 0x0 address if the base register is r0, instead of
> the content of the r0 register. For example:
> 
> 	r1 := 0xdeadbeef
> 	r0 := 0xdeadbeef
> 
> 	ld r2, 0(1) /* will load into r2 the content of r1 address */
> 	ld r2, 0(0) /* will load into r2 the content of 0x0 */
> 
> In order to avoid this possible problem, the inline assembly constraint
> should be aware that these registers will be used as a base register, thus,
> r0 should not be allocated.
> 
> Other than that, this patch removes inline assembly operands that are not
> used by the tests.
> 
> Signed-off-by: Breno Leitao <leitao at debian.org>
> Reviewed-by: Segher Boessenkool <segher at kernel.crashing.org>

Series applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/5249497a7bb6334fcc128588d6a7e1

cheers


More information about the Linuxppc-dev mailing list