Kernel trap on linux compat load
Eric Millbrandt
emillbrandt at coldhaus.com
Fri Jun 17 21:58:17 GMT 2005
John Baldwin wrote:
>On Thursday 16 June 2005 08:21 pm, Eric Millbrandt wrote:
>
>
>>John Baldwin wrote:
>>
>>
>>>On Friday 10 June 2005 07:02 pm, Eric Millbrandt wrote:
>>>
>>>
>>>>I've noticed that linux compatibility caused my system to crash since I
>>>>upgraded from RELENG_4_9 (RELENG_4_10, RELENG_4_11, RELENG_4). I
>>>>upgraded using buildworld, I haven't had a change to test using a clean
>>>>binary install. Has anyone else seen this behavior? It's easy to
>>>>reproduce, the system traps right on linux compatibility load. The only
>>>>similar behavior I've found on google is an unanswered post
>>>>http://lists.freebsd.org/pipermail/freebsd-alpha/2004-June/001555.html
>>>>
>>>>Jun 8 07:18:17 mongoloid /kernel: fatal kernel trap:
>>>>Jun 8 07:18:17 mongoloid /kernel:
>>>>Jun 8 07:18:17 mongoloid /kernel: trap entry = 0x4 (unaligned access
>>>>fault) Jun 8 07:18:17 mongoloid /kernel: a0 = 0xfffffe0015285e34
>>>>Jun 8 07:18:17 mongoloid /kernel: a1 = 0x2d
>>>>Jun 8 07:18:17 mongoloid /kernel: a2 = 0x1
>>>>Jun 8 07:18:17 mongoloid /kernel: pc = 0xfffffc0000386e68
>>>>Jun 8 07:18:17 mongoloid /kernel: ra = 0xfffffc0000386dd8
>>>>Jun 8 07:18:17 mongoloid /kernel: curproc = 0xfffffe001177e780
>>>>Jun 8 07:18:17 mongoloid /kernel: pid = 173, comm = ldconfig
>>>>Jun 8 07:18:17 mongoloid /kernel:
>>>>Jun 8 07:18:17 mongoloid /kernel: panic: trap
>>>>
>>>>EEM
>>>>
>>>>
>>>Did you rebuild your kernel with buildkernel / installkernel? I believe
>>>that buildworld on 4.x still builds and installs new modules into
>>>/modules including the linux and osf1 compat modules. New modules aren't
>>>guaranteed to work on older kernels, so if your kernel is still 4.9, that
>>>is probably your problem.
>>>
>>>
>>I used buildworld, buildkernel, installkernel, drop to single user,
>>installworld, and mergemaster. This is with linux_compat loading from
>>rc.conf. I misspoke earlier loading linux.ko works fine but running a
>>linux binary, /compat/linux/sbin/ldconfig or sophie, causes the trap.
>>On a side not osf1_compat works fine.
>>
>>Here are my stack traces after running /compat/linux/sbin/ldconfig...
>>Debugger() at Debugger=0x2c
>>panic() at panic+0x100
>>trap() at trap+0x600
>>XentUna() at XentUna+0x2c
>>--- unaligned access fault (from ipl0) ---
>>kernel_sysctl at kernel_sysctl+ox1a8
>>347() at -0x1fffe4a63d0
>>Here ddb traps on itself (memory management fault)
>>
>>This one is from running sophie
>>Debugger() at Debugger=0x2c
>>panic() at panic+0x100
>>trap() at trap+0x600
>>XentUna() at XentUna+0x2c
>>--- unaligned access fault (from ipl0) ---
>>kernel_sysctl at kernel_sysctl+ox1a8
>>linux_newuname() at linux_newuname+0xd0
>>syscall() at syscal+0x224
>>XentSys at XentSys+0x5c
>>--- syscall (339, Linux ELF, linux_newuname) ---
>>--- user mode ---
>>
>>
>
>Ok, this is helpful. Can you do 'gdb kernel.debug' and then type 'list
>*kernel_sysctl+0x1a8'? This will give us the source file/line that it
>faulted at. Thanks!
>
>
>
Ok here is what I found.
(gdb) list *kernel_sysctl+0x1a8
0xfffffc000038e9a8 is in kernel_sysctl
(/usr/src/sys/kern/kern_sysctl.c:938).
933 if (req.oldptr && req.oldidx > req.oldlen)
934 *retval = req.oldlen;
935 else
936 *retval = req.oldidx;
937 }
938 return (error);
939 }
940
941 int
942 kernel_sysctlbyname(struct proc *p, char *name, void *old,
size_t *oldlenp,
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 6179 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.freebsd.org/pipermail/freebsd-alpha/attachments/20050617/84400d3f/smime.bin
More information about the freebsd-alpha
mailing list