[PATCH] powerpc: 32 bit getcpu VDSO function uses 64 bit instructions

Andreas Schwab schwab at linux-m68k.org
Fri Nov 28 05:20:53 AEDT 2014


Segher Boessenkool <segher at kernel.crashing.org> writes:

> On Wed, Nov 26, 2014 at 05:50:27PM -0600, Peter Bergner wrote:
>> On Thu, 2014-11-27 at 09:38 +1100, Michael Ellerman wrote:
>> > On Thu, 2014-11-27 at 08:11 +1100, Anton Blanchard wrote:
>> > > I used some 64 bit instructions when adding the 32 bit getcpu VDSO
>> > > function. Fix it.
>> > 
>> > Ouch. The symptom is a SIGILL I presume?
>> 
>> Nope, you don't get a SIGILL when executing 64-bit instructions in
>> 32-bit mode, so it'll happily just execute the instruction, doing
>> a full 64-bit compare.  I'm guessing that the upper 32-bits of both
>> r3 and r4 contain zeros, so we're probably just getting lucky.
>
> You will get a SIGILL if you run on 32-bit hardware.

Not on the 7447A, fwiw.

Andreas.

-- 
Andreas Schwab, schwab at linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


More information about the Linuxppc-dev mailing list