On 06-Feb-01 Jim Bloom wrote:
> Here are the registers (subject to typing errors):
>
> cs 0xc2fb0008
> ds 0xa000010
> es 0x10
> fs 0x18
> ss 0x10
> eax 0x12
> ecx 0x20
> edx 0xc00b8f00
> ebx 0x2
> esp 0xc2fbee1c
> ebp 0xc2fbee28
> esi 0x100
> edi 0xc0290990 __set_sysctl_set_sym_sysctl__kern_fscale+0x4
> eip 0xc0266fcc Debugger+44
> efl 0x56
>
> Jim Bloom
> [EMAIL PROTECTED]
Erm, this doesn't look good:
movl $GPROC0_SEL*8, %esi /* GSEL(entry, SEL_KPL) */
ltr %si
#define GPROC0_SEL 4 /* Task state process slot zero and up */
Thus, %esi should be 32 == 0x20, not 0x100. :( I have no clue why that is
screwed up, unless something is overwriting your code segment. Can you panic
it and do an x/i of sw1b+0x72? It should look something like this:
121: be 20 00 00 00 mov $0x20,%esi
126: 0f 00 de ltr %si
--
John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message