diff options
author | benno <benno@FreeBSD.org> | 2002-06-29 09:39:44 +0000 |
---|---|---|
committer | benno <benno@FreeBSD.org> | 2002-06-29 09:39:44 +0000 |
commit | 202c3a8b7c8fa87cee9aac4374a4fa73deecba73 (patch) | |
tree | 7742e164fb0233275f282f7e2d1901954d256323 /usr.bin/units | |
parent | 588d2f5396f9a2be7f3ffde5854e4f5fd1b8ceb2 (diff) | |
download | FreeBSD-src-202c3a8b7c8fa87cee9aac4374a4fa73deecba73.zip FreeBSD-src-202c3a8b7c8fa87cee9aac4374a4fa73deecba73.tar.gz |
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>
Diffstat (limited to 'usr.bin/units')
0 files changed, 0 insertions, 0 deletions