amd64 cpu_switch in C.

Gary Jennejohn gary.jennejohn at freenet.de
Wed Mar 12 10:02:33 UTC 2008


On Wed, 12 Mar 2008 12:14:36 +0800
David Xu <davidxu at FreeBSD.org> wrote:

> Jeff Roberson wrote:
> > http://people.freebsd.org/~jeff/amd64.diff
> 
> This is a good idea. In fact, according to calling conversion, some 
> registers are not needed to be saved across function call, e.g on
> i386, eax, edx, and ecx. :-) but gdb may need them to dig out
> stack variable's value.
> 

I applied this patch yesterday on an AMD64 X2 box and got this panic
today after I started X:

Unread portion of the kernel message buffer:
panic: smp_tlb_shootdown: interrupts disabled
cpuid = 0
Uptime: 47s
Physical memory: 3062 MB
Dumping 169 MB: 154 138 122 106 90 74 58 42 26 10

That's all the useful information which I have because the back trace
is corrupted.

BTW I'm using SCHED_ULE.

Maybe I shouldn't have tried this patch yet since it doesn't seem to be SMP
ready.

---
Gary Jennejohn


More information about the freebsd-arch mailing list