Messages in this thread | | | Date | Tue, 7 Dec 1999 18:54:11 -0500 (EST) | From | M Sweger <> | Subject | UMSDOS: kernel v2.2.7 ksymoops listing for null ptr boot problem. |
| |
Hi, I've provided a ksymoops trace for UMSDOS linux v2.2.7 using libc6 v2.0.7pre6 and gcc v2.95.2. Here are my setups.
A). Hardware Dell 333mhz optiplex GX1 adaptec 2940U2W AIC 7985 WDE 9 gig SCSI QUANTUM 1.2 gig IDE 3com 3c59x ether card.
B). USMDOS OS: stable linux v2.2.1 trying to run v2.2.7 all s/w pkg about the latest i.e. Mtools v3.9.4, util-linuxi, binutils 2.9.1.0.24.tar.gz bin86_0.13.0-4.deb precompiled libc6-dev_2.0.7t-1.deb
modules insmod'd: loop.o 3c59x.o daemons running: syslogd, klogd,inetd ---nothing else kernel configuration: minimal with i586 option selected, with MTRR not enabled. with SMP support not enabled. with no floating pt emulation. with FAT,UMSDOS and VFAT filesys.
****** Listing of rc.M that I use ******
# Start system log daemon: syslogd
if [ -x /usr/sbin/syslogd ]; then echo "Starting system log daemon: syslogd" /usr/sbin/syslogd -m 0 fi
# Start kernel log daemon: klogd
if [ -x /usr/sbin/klogd ]; then echo "Starting kernel log daemon: klogd"
# NOTE: I have to do all this since the stack trace doesn't right to a file. , the ksyms aren't available due to the crash on boot, , the modules dumped, , To get the kern.oops which isn't the stack trace - I need to force a kernel buffer flush or else I won't have any data at the crash.
Once the kernel crashes, the MSDOS filesystem must be repaired. Then when I reboot to a stable v2.2.1 kernel, it copies the previous data to a safe area for review whils't the new data is written out for the next reboot.
cp -p /var/log/kern.oops /root/kern.oops.$$.`date +%s` cat /proc/modules >/root/kmodules.`date +%s` cat /proc/ksyms >/root/ksyms.`date +%s` # force kernel flush of messages sync /usr/sbin/klogd -f /var/log/kern.oops -k /usr/src/linux/System.map -c 1 fi
C). booted the linux v2.2.7 NOTE: I had to hand type this data into a file to run through ksymoops. To do this, I'll be running kernel v2.2.1 which is stable; however, all the data fed to ksymoops is the previous kernel v2.2.7 crash data.
****** The shell script I run on the data ****** #!/bin/sh
ksymoops -V -l /root/227/kmodules.227 -k /root/227/ksyms.227 -o /lib/modules/2.2.7/ /root/227/kern.ops >/root/227/kt.1 2>&1
******** The data dump trace ********* Note: the module warning might be due to be having v2.2.1 3c59x loaded althought the ksyms were dumped by rc.M start script above.
ksymoops 0.7c on i686 2.2.7. Options used -V (specified) -k /root/227/ksyms.227 (specified) -l /root/227/kmodules.227 (specified) -o /lib/modules/2.2.7/ (specified) -m /usr/src/linux/System.map (default)
Warning (compare_ksyms_lsmod): module 3c59x is in lsmod but not in ksyms, probably no symbols exported Oops: 0 CPu: 0 EIP: 0010:[<c012c1ae>] Using defaults from ksymoops -t elf32-i386 -a i386 EFLAGS: 00010007 eax: 00000000 ebx: c7497010 ecx: c7ef6098 edx: 00000000 esi: c749700c edi: c7497000 ebp: 00000287 esp: c0003efc ds: 0018 es: 0018 ss: 0018 process init (pid:1, process nr:1, stackpage=c0003000) Stack: 00000400 0000000b 00000004 c0098ef8 00000000 c012c51b c7497000 00000000 0000000b c012c4ec 00000001 00000004 c0098ef8 00000000 00000000 c0010760 08049544 c0002000 c0002000 7fffffff 00000000 c7497000 00000000 00000000 call trace: [<c012c51b>] [<c012c4ec>] [<c012c885>] [<c0108b2d>] [<c01089f4>] code: 8b 42 04 39 d8 75 f7 89 4a 04 55 9d 83 c4 f4 8b 06 50 e8 27
>>EIP; c012c1ae <free_wait+3a/74> <===== Trace; c012c51b <do_select+1fb/214> Trace; c012c4ec <do_select+1cc/214> Trace; c012c885 <sys_select+351/478> Trace; c0108b2d <error_code+2d/40> Trace; c01089f4 <system_call+34/40> Code; c012c1ae <free_wait+3a/74> 00000000 <_EIP>: Code; c012c1ae <free_wait+3a/74> <===== 0: 8b 42 04 movl 0x4(%edx),%eax <===== Code; c012c1b1 <free_wait+3d/74> 3: 39 d8 cmpl %ebx,%eax Code; c012c1b3 <free_wait+3f/74> 5: 75 f7 jne fffffffe <_EIP+0xfffffffe> c012c1ac <free_wait+38/74> Code; c012c1b5 <free_wait+41/74> 7: 89 4a 04 movl %ecx,0x4(%edx) Code; c012c1b8 <free_wait+44/74> a: 55 pushl %ebp Code; c012c1b9 <free_wait+45/74> b: 9d popf Code; c012c1ba <free_wait+46/74> c: 83 c4 f4 addl $0xfffffff4,%esp Code; c012c1bd <free_wait+49/74> f: 8b 06 movl (%esi),%eax Code; c012c1bf <free_wait+4b/74> 11: 50 pushl %eax Code; c012c1c0 <free_wait+4c/74> 12: e8 27 00 00 00 call 3e <_EIP+0x3e> c012c1ec <__pollwait+4/98>
1 warning issued. Results may not be reliable.
Thanks for any further info.
PS: kernels v2.2.1, v2.2.5, v2.2.6 run ok. kernels v2.2.7, v2.2.8, v2.2.10, v2.2.12, v2.2.13 crash like this all other kernels weren't tried.
BTW, if SMP and/or MTRR is compiled in, then I don't get a stack trace at all although it defaults to no SMP since I only have one processor.
PS2: Please email me too since I don't subscribe to this mailing list due to the other lists I belong too.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |