cvs commit: src/sys/powerpc/powerpc machdep.c trap.c trap_subr.S
Peter Grehan
grehan at FreeBSD.org
Mon Aug 8 07:02:13 GMT 2005
grehan 2005-08-08 07:02:13 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_6)
sys/powerpc/powerpc machdep.c trap.c trap_subr.S
Log:
MFC machdep.c r1.90
trap.c r1.55
trap_subr.S r1.15
Temporary band-aid to fix hang when a process exec's Altivec
instructions.
trap_subr.S: declare a stub for the a-unavailable trap
that does an absolute jump to the vector-assist trap.
This is due to the fact that the vec-unavail trap
doesn't start at a 256-byte boundary, so the trick of
masking the bottom 8 bits of the link register to identify
the interrupt doesn't work, so let the vec-assist
case handle Altivec-disabled for the time being.
Note that this will be fixed in the future with a much
smaller vector code-stub (< 16 bytes) that will allow
use of strange vector offsets that are also present in
4xx processors, and also allow smaller differences in
vector codepaths on the G5.
trap.c: Treat altivec-unavailable/assist process traps as SIGILL.
Not quite correct, since altivec-assist should really
be a panic,
but it is fine for the moment due to the above measure.
machdep.c Install the stub code for the altivec-unavailable trap, and
the standard trap code at the altivec-assist.
Approved by: re (Ken Smith)
Revision Changes Path
1.89.2.1 +3 -0 src/sys/powerpc/powerpc/machdep.c
1.54.2.1 +5 -0 src/sys/powerpc/powerpc/trap.c
1.14.2.1 +8 -0 src/sys/powerpc/powerpc/trap_subr.S
More information about the cvs-src
mailing list