2.2.13pre15, unlink(): NULL pointer dereference, SMP

thx@rivalnet.de
Tue, 5 Oct 1999 14:44:44 +0200


A pretty serious oops during unlink/rm. Not during stress test, but during a manual rm of two large files.
Other patches: The large disk and the raid patch could theoretically be involved in the oops, but it seems unlikely.

oops details:
- during "rm test/*" for two large files (ca. 500MB)
- on hda3 (root partition), non-raid partition, IBM 25GB
- rm died with segmentation fault
- all filesystems (2) on hda dead after oops
- third filesystem still operative (idle at oops time, but eventually flushing, raid5, hde,f,i,j)
- system was up for 10 minutes

kernel patches:
- raid 2.2.11
- large disk patch (for raid5 IBM 37GB drives)
- compiled with gcc 2.7.2.3
- (no unified ide patch)

hardware:
- SMP, dual p3-450
- 2 x promise UDMA66
- 25GB drive as hda, on onboard controller as single master
- 37GB drives at hde, hdf, hdi, hdj

the log:

kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000004
kernel: current->tss.cr3 = 2b0ae000, %cr3 = 2b0ae000
kernel: *pde = 00000000
kernel: Oops: 0000
kernel: CPU: 1
kernel: EIP: 0010:[ide_do_request+766/1360]
kernel: EFLAGS: 00010286
kernel: eax: 000001c0 ebx: c02bcb84 ecx: 0000000e edx: 00000000
kernel: esi: c02c1e50 edi: eb0ade28 ebp: 00000046 esp: eb0addec
kernel: ds: 0018 es: 0018 ss: 0018
kernel: Process rm (pid: 276, process nr: 45, stackpage=eb0ad000)
kernel: Stack: eb2fde60 00000000 eb0ade08 00000000 00000000 c01b64e4 00000002 c02c1e34
kernel: 00000000 c02c1e34 c01a2afd effda7a0 eb0ade28 00000000 00000246 00000286
kernel: c01a2b24 effda7a0 c01a014d 00000000 c0127dba c02bcb84 00000000 00000100
kernel: Call Trace: [do_rw_disk+0/632] [do_hwgroup_request+73/92] [do_ide0_request+20/40] [unplug_device+69/84] [__wait_on_buffer+182/300] [bread+80/112] [trunc_indirect+86/760]
kernel: [trunc_dindirect+396/448] [bread+80/112] [trunc_tindirect+267/312] [ext2_truncate+142/500] [ext2_delete_inode+81/120] [ext2_delete_inode+103/120] [iput+155/576] [d_delete+78/108]
kernel: [ext2_unlink+359/392] [vfs_unlink+208/220] [sys_unlink+135/212] [system_call+52/56]
kernel: Code: 0f b6 6a 04 89 ef c1 ef 06 8b 46 48 89 44 24 24 fb 83 ff 01
kernel: hda: lost interrupt
kernel: hda: lost interrupt
kernel: hda: lost interrupt
kernel: hda: lost interrupt
kernel: hda: lost interrupt

--
the online community service for gamers & friends -  http://www.rivalnet.com
* unterstützt über 50 PC-Spiele im Multiplayer-Modus
* Dateien senden & empfangen bis 500 MB am Stück
* Newsgroups, Mail, Chat & mehr

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