On Feb 6, 2011, at 9:53 AM, Jeff Rizzo wrote:
Since the PPC changes brought in a couple weeks ago, I have not been able to
run a -current userland on my G4/400.
There was a problem where the kernel would not start, which was fixed by matt@
after a few days, and I can successfully boot a GENERIC from the latest
autobuilds. However, when I unpack userland (base.tgz, in this case),
basically all binaries except those in /rescue stop working. I get these kinds
of messages from the kernel:
trap: pid 694.1 (ls): user read DSI trap @ 0x407eb46c by 0xeff0f2dc (DSISR
0x40000000, err=14)
trap: pid 541.1 (dmesg): user ISI trap @ 0x2000 (SRR1=0x4000f032)
trap: pid 167.1 (dmesg): user ISI trap @ 0x2000 (SRR1=0x4000f032)
...once I back out to userland from 20110111, things start working again.
Does anyone have any clue what's going on here? This is the box that I was
using to run ATF tests on, and it's basically been idle for three weeks because
of this.
The latest commit to powerpc/include/asm.h fixes this. I didn't realize
that after my changes that binutils/gcc automatically switched to using
secure-plt by default. The change to asm.h make .S files use secureplt
as well.
One side effect of this is that PPC programs will no longer have
executable .data/.bss and startup times will be slightly faster.