Date: Sat, 29 Jun 2002 02:39:44 -0700 (PDT) From: Benno Rice <benno@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/powerpc/include pcb.h src/sys/powerpc/powerpc swtch.s Message-ID: <200206290939.g5T9djul045968@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
benno 2002/06/29 02:39:44 PDT
Modified files:
sys/powerpc/include pcb.h
sys/powerpc/powerpc swtch.s
Log:
To quote Peter:
The case in cpu_switch() where there isn't a higher priority thread
(choosethread() == curthread) uses r4 as the PCB context pointer. However, the
use of r4 after the label L2 is incorrect, since it was probably trashed by
the call to choosethread, and in any case was set up to curthread at the start
of the routine.
This condition will occur when an interrupt thread schedules a netisr, which
is a lower priority thread.
Another (probably unnecessary) difference is that I was paranoid about
register trashing, so I decided to save r2 and r13 as well.
Submitted by: Peter Grehan <peterg@ptree32.com.au>
Revision Changes Path
1.5 +1 -1 src/sys/powerpc/include/pcb.h
1.14 +15 -10 src/sys/powerpc/powerpc/swtch.s
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200206290939.g5T9djul045968>
