Linux Kernel Crash Report; Memory Manager Bug

From: Kenneth J. Hendrickson (khendric@BluTie_linux.MLB.ESID.NorthGrum.com)
Date: Wed Jun 14 2000 - 13:30:30 EST


Problem Summary:

Linux kernel crashed while compiling a new kernel.

Problem Description:

I believe (from the oops message) that what I was doing
(compiling a new kernel) is not relevant.

There is probably bad memory managenemtn code that dereferences a NULL
pointer, and or is generating a NULL pointer that later gets dereferenced
and panics the kernel.

I'm willing to work with you, or anybody else, to help debug this.

Relevant log entries (oops message):

Jun 13 19:23:12 BluTie_linux kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000024 (error 40000000)
Jun 13 19:23:12 BluTie_linux kernel: NIP: C0032E44 XER: 00000000 LR: C002459C REGS: c0b61df0 TRAP: 0300
Jun 13 19:23:12 BluTie_linux kernel: MSR: 00009032 [EEIRDRME]
Jun 13 19:23:12 BluTie_linux kernel: TASK = c0b60000[5] 'kswapd' mm->pgd c01b1000 Last syscall: -1
Jun 13 19:23:12 BluTie_linux kernel: last math db0e2000
Jun 13 19:23:12 BluTie_linux kernel: GPR00: C002459C C0B61EA0 C0B60000 C0A48C28 C0A48C40 C0A48C40 DB441B84 C0603000
Jun 13 19:23:12 BluTie_linux kernel: GPR08: 00040000 00000004 0000D196 C01C0000 44824084 1001A1A4 00000000 00000000
Jun 13 19:23:12 BluTie_linux kernel: GPR16: 00000000 00000000 20000002 00000000 0FFFF000 E0001FFE 00000000 00000000
Jun 13 19:23:12 BluTie_linux kernel: GPR24: 00000000 C01D0000 C01D0000 C0A48C28 C01D0000 C01D0000 00000004 00000004
Jun 13 19:23:12 BluTie_linux kernel: Call backtrace:
Jun 13 19:23:12 BluTie_linux kernel: C0032ED8 C002459C C002AC24 C002AD30 C0009CF4
Jun 13 19:23:12 BluTie_linux kernel: Kernel panic: kernel access of bad area pc c0032e44 lr c002459c address 24 tsk kswapd/5

ksymoops output:

WARNING: This version of ksymoops is obsolete.
WARNING: The current version can be obtained from ftp://ftp.ocs.com.au/pub/ksymoops
Options used: -v /boot/vmlinux-2.2.15-2.9.0-kjh-01 (specified)
              -o /lib/modules/2.2.15-2.9.0-kjh (specified)
              -k /proc/ksyms (default)
              -l /proc/modules (default)
              -m /boot/System.map-2.2.15-2.9.0-kjh-01 (specified)
              -c 1 (default)

Jun 13 19:23:12 BluTie_linux kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000024 (error 40000000)
Jun 13 19:23:12 BluTie_linux kernel: NIP: C0032E44 XER: 00000000 LR: C002459C REGS: c0b61df0 TRAP: 0300
Jun 13 19:23:12 BluTie_linux kernel: MSR: 00009032 [EEIRDRME]
Jun 13 19:23:12 BluTie_linux kernel: TASK = c0b60000[5] 'kswapd' mm->pgd c01b1000 Last syscall: -1
Jun 13 19:23:12 BluTie_linux kernel: last math db0e2000
Jun 13 19:23:12 BluTie_linux kernel: GPR00: C002459C C0B61EA0 C0B60000 C0A48C28 C0A48C40 C0A48C40 DB441B84 C0603000
Jun 13 19:23:12 BluTie_linux kernel: GPR08: 00040000 00000004 0000D196 C01C0000 44824084 1001A1A4 00000000 00000000
Jun 13 19:23:12 BluTie_linux kernel: GPR16: 00000000 00000000 20000002 00000000 0FFFF000 E0001FFE 00000000 00000000
Jun 13 19:23:12 BluTie_linux kernel: GPR24: 00000000 C01D0000 C01D0000 C0A48C28 C01D0000 C01D0000 00000004 00000004
Jun 13 19:23:12 BluTie_linux kernel: Call backtrace:
Jun 13 19:23:12 BluTie_linux kernel: C0032ED8 C002459C C002AC24 C002AD30 C0009CF4
Jun 13 19:23:12 BluTie_linux kernel: Kernel panic: kernel access of bad area pc c0032e44 lr c002459c address 24 tsk kswapd/5

>>NIP: c0032e44 <try_to_free_buffers+20/cc>
Trace: c0032ed8 <try_to_free_buffers+b4/cc>
Trace: c002459c <shrink_mmap+140/1c8>
Trace: c002ac24 <do_try_to_free_pages+48/cc>
Trace: c002ad30 <kswapd+88/124>
Trace: c0009cf4 <kernel_thread+2c/38>
>>NIP: c0032e44 <try_to_free_buffers+20/cc>

22 warnings issued. Results may not be reliable.

System.map (/boot/System.map-2.2.15-2.9.0-kjh-01):

This file is huge. I'll email it to you if you want it.

kernel version (/proc/version):

Linux version 2.2.15-2.9.0-kjh (khendric@BluTie.MLB.ESID.NorthGrum.com) (gcc version 2.95.2 19991024 (release/franzo)) #1 Thu May 11 20:03:17 EDT 2000

Output of scripts/ver_linux:

-- Versions installed: (if some fields are empty or looks
-- unusual then possibly you have very old versions)
Linux BluTie_linux.MLB.ESID.NorthGrum.com 2.2.15-2.9.0-kjh #1 Thu May 11 20:03:17 EDT 2000 ppc unknown
Kernel modules 2.3.10-pre1
Gnu C 2.95.2
Binutils 2.9.5.0.22
Linux C Library 2.1.3
Dynamic linker ldd (GNU libc) 2.1.3
Procps 2.0.6
Mount 2.10f
Net-tools 1.54
Console-tools 0.3.3
Sh-utils 2.0
Modules Loaded soundcore autofs

Processor Information (/proc/cpuinfo):

processor : 0
cpu : 750
temperature : 0 C
clock : 450MHz
revision : 130.2
bogomips : 894.57
zero pages : total 0 (0Kb) current: 0 (0Kb) hits: 0/453 (0%)
machine : PowerMac1,1
motherboard : PowerMac1,1 MacRISC Power Macintosh
L2 cache : 1024K unified
memory : 512MB

Module Information (/proc/modules):

soundcore 3456 0 (autoclean) (unused)
autofs 11704 1 (autoclean)

Loaded driver and hardware information (/proc/ioports, /proc/iomem):

0000-00be : aic7xxx
1800-1807 : ide0
1808-180f : ide1

/proc/iomem: No such file or directory

PCI Information ('lspci -vvv' as root):

00:00.0 Host bridge: Motorola MPC106 [Grackle] (rev 40)
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort+ <MAbort+ >SERR- <PERR-
        Latency: 0 set, cache line size 08

00:0d.0 PCI bridge: Digital Equipment Corporation DECchip 21154 (rev 02) (prog-if 00 [Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 set
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
        I/O behind bridge: 00001000-00001fff
        Memory behind bridge: 80800000-809fffff
        Prefetchable memory behind bridge: 0000000080800000-0000000080700000
        BridgeCtl: Parity- SERR+ NoISA+ VGA- MAbort- >Reset- FastB2B-
        Capabilities: [dc] Power Management version 1
                Flags: PMEClk- AuxPwr- DSI- D1- D2- PME-
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:10.0 VGA compatible controller: ATI Technologies Inc Rage 128 RE (prog-if 00 [VGA])
        Subsystem: Unknown device b530:0408
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 8 min, 16 set, cache line size 08
        Interrupt: pin A routed to IRQ 22
        Region 0: Memory at 84000000 (32-bit, prefetchable)
        Region 1: I/O ports at 2000 [disabled]
        Region 2: Memory at 80a00000 (32-bit, non-prefetchable)
        Expansion ROM at 80a20000 [disabled]
        Capabilities: [5c] Power Management version 1
                Flags: PMEClk- AuxPwr- DSI- D1+ D2- PME-
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

01:00.0 FireWire (IEEE 1394): Texas Instruments PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (rev 02) (prog-if 00 [Generic])
        Subsystem: Apple Computer Inc.: Unknown device 001c
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 21
        Region 0: Memory at 80883000 (32-bit, non-prefetchable) [disabled]
        Region 1: Memory at 808b0000 (32-bit, non-prefetchable) [disabled]
        Region 2: Memory at 808a0000 (32-bit, non-prefetchable) [disabled]
        Expansion ROM at 80890000 [disabled]

01:01.0 IDE interface: CMD Technology Inc PCI0646 (rev 07) (prog-if 8f [Master SecP SecO PriP PriO])
        Subsystem: CMD Technology Inc: Unknown device 0646
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 2 min, 4 max, 64 set
        Interrupt: pin A routed to IRQ 26
        Region 0: I/O ports at 1840
        Region 1: I/O ports at 1830
        Region 2: I/O ports at 1820
        Region 3: I/O ports at 1810
        Region 4: I/O ports at 1800
        Capabilities: [60] Power Management version 1
                Flags: PMEClk- AuxPwr- DSI+ D1+ D2+ PME-
                Status: D0 PME-Enable- DSel=0 DScale=3 PME-

01:02.0 SCSI storage controller: Q Logic ISP2100 (rev 03)
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 248 set, cache line size 08
        Interrupt: pin A routed to IRQ 23
        Region 0: I/O ports at 1400 [disabled]
        Region 1: Memory at 80882000 (32-bit, non-prefetchable)
        Expansion ROM at 80900000 [disabled]

01:03.0 SCSI storage controller: Adaptec AHA-2940U2/W (rev 01)
        Subsystem: Adaptec: Unknown device a100
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 39 min, 25 max, 16 set, cache line size 08
        Interrupt: pin A routed to IRQ 24
        BIST result: 00
        Region 0: I/O ports at <unassigned>
        Region 1: Memory at 80881000 (64-bit, non-prefetchable)
        Expansion ROM at 808c0000 [disabled]
        Capabilities: [dc] Power Management version 1
                Flags: PMEClk- AuxPwr- DSI- D1- D2- PME-
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

01:05.0 Class ff00: Apple Computer Inc. Paddington Mac I/O
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 16 set, cache line size 08
        Region 0: Memory at 80800000 (32-bit, non-prefetchable)

01:06.0 USB Controller: OPTi Inc. 82C861 (rev 10) (prog-if 10 [OHCI])
        Subsystem: OPTi Inc.: Unknown device c861
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR+
        Latency: 16 set, cache line size 08
        Interrupt: pin A routed to IRQ 28
        Region 0: Memory at 80880000 (32-bit, non-prefetchable)

SCSI information (from /proc/scsi/scsi):

Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: QUANTUM Model: ATLAS IV 9 WLS Rev: 0707
  Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 02 Lun: 00
  Vendor: IBM Model: DDRS-39130D Rev: DC2A
  Type: Direct-Access ANSI SCSI revision: 02

-
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/



This archive was generated by hypermail 2b29 : Thu Jun 15 2000 - 21:00:32 EST