https://bugzilla.redhat.com/show_bug.cgi?id=311991
[still present in 2.6.23.8]
[Drivers really need to actually be ready to receive interrupts when
they call request_irq(). We keep finding drivers that aren't because
we enable CONFIG_DEBUG_SHIRQ]
kernel version: 2.6.22.7-85.fc7debug
modprobe ioatdma during bootup sez:
[ 142.497353] Module ioatdma cannot be unloaded due to unsafe usage in
drivers/dma/ioatdma.c:829
[ 142.497906] ACPI: PCI Interrupt 0000:00:08.0[A] -> GSI 16 (level, low) -> IRQ 16
[ 142.497945] Unable to handle kernel NULL pointer dereference at
0000000000000003 RIP:
[ 142.498002] [<ffffffff8835adc0>] :ioatdma:ioat_do_interrupt+0xd/0x50
[ 142.498770] PGD 10fc46067 PUD 114a56067 PMD 0
[ 142.499156] Oops: 0000 [1] SMP
[ 142.499498] last sysfs file: /block/sr0/removable
[ 142.499753] CPU 3
[ 142.500049] Modules linked in: ioatdma dell_rbu nfsd exportfs lockd nfs_acl
ipmi_devintf ipmi_si ipmi_msghandler hidp l2cap bluetooth sunr
pc xt_length ipt_TOS xt_state xt_tcpudp ipt_REJECT ipt_LOG xt_limit
iptable_mangle iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack nfnetlin
k iptable_filter ip_tables x_tables ppp_deflate zlib_deflate ppp_synctty
ppp_async crc_ccitt ppp_generic slhc bridge dm_mirror dm_multipath d
m_mod video sbs button dock battery ac tcp_westwood kvm_intel kvm sr_mod cdrom
ata_generic ata_piix serio_raw libata bnx2 rtc_cmos sg joydev
usb_storage shpchp megaraid_sas sd_mod scsi_mod ext3 jbd mbcache ehci_hcd
ohci_hcd uhci_hcd
[ 142.505129] Pid: 5239, comm: modprobe Not tainted 2.6.22.7-85.fc7debug #1
[ 142.505386] RIP: 0010:[<ffffffff8835adc0>] [<ffffffff8835adc0>]
:ioatdma:ioat_do_interrupt+0xd/0x50
[ 142.505892] RSP: 0018:ffff81010ff83c48 EFLAGS: 00010096
[ 142.506146] RAX: 0000000000001214 RBX: 0000000000000202 RCX: ffffffff8835b0f5
[ 142.506405] RDX: 0000000000000000 RSI: ffff81012cc11700 RDI: 00000000000008f4
[ 142.506663] RBP: ffff81012cc11700 R08: ffff81012cc11700 R09: ffff81012cc11700
[ 142.506919] R10: 000000000000005a R11: ffffffff811f2016 R12: 0000000000000020
[ 142.507176] R13: ffff81012cc11700 R14: ffffffff8835adb3 R15: 00000000000008f4
[ 142.507434] FS: 00002aaaaaae0250(0000) GS:ffff810105855900(0000)
knlGS:0000000000000000
[ 142.507892] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 142.508147] CR2: 0000000000000003 CR3: 0000000110281000 CR4: 00000000000026e0
[ 142.508406] Process modprobe (pid: 5239, threadinfo ffff81010ff82000, task
ffff8101106dcf60)
[ 142.508866] Stack: ffff81012cc11700 0000000000000202 ffff81012447ab40
ffffffff81069bd8
[ 142.509544] ffff81012447ac80 ffffffff8835b0f5 01ff81012f971070 ffff81012f971070
[ 142.510176] ffff81012cc11700 ffff81012f971000 00000000fffffff4 0000000000000000
[ 142.510566] Call Trace:
[ 142.511063] [<ffffffff81069bd8>] request_irq+0xcc/0x120
[ 142.511321] [<ffffffff8835aab7>] :ioatdma:ioat_probe+0x15b/0x457
[ 142.511581] [<ffffffff8126a916>] _spin_unlock+0x17/0x20
[ 142.511839] [<ffffffff8112c1be>] pci_device_probe+0xcd/0x134
[ 142.512097] [<ffffffff811a54a3>] driver_probe_device+0xff/0x17c
[ 142.512354] [<ffffffff811a5668>] __driver_attach+0x90/0xcc
[ 142.512609] [<ffffffff811a55d8>] __driver_attach+0x0/0xcc
[ 142.512865] [<ffffffff811a55d8>] __driver_attach+0x0/0xcc
[ 142.513120] [<ffffffff811a4824>] bus_for_each_dev+0x43/0x6e
[ 142.513378] [<ffffffff811a4b9c>] bus_add_driver+0x7b/0x19d
[ 142.513634] [<ffffffff8112c3a0>] __pci_register_driver+0x68/0x9a
[ 142.513892] [<ffffffff81055f70>] sys_init_module+0x163f/0x17a1
[ 142.514153] [<ffffffff81067540>] audit_syscall_entry+0x141/0x174
[ 142.514414] [<ffffffff81009d2e>] tracesys+0xd5/0xda
[ 142.514673]
[ 142.514920]
[ 142.514920] Code: 8a 42 03 0f b6 d8 31 c0 f6 c3 01 74 31 f6 c3 02 75 0a 0f b6
[ 142.516541] RIP [<ffffffff8835adc0>] :ioatdma:ioat_do_interrupt+0xd/0x50
[ 142.516841] RSP <ffff81010ff83c48>
[ 142.517091] CR2: 0000000000000003
>-----Original Message-----
>From: Chuck Ebbert [mailto:[email protected]]
>Sent: Thursday, January 17, 2008 4:01 PM
>To: Nelson, Shannon
>Cc: linux-kernel
>Subject: IOATDMA: driver oopses on request_irq()
>
>https://bugzilla.redhat.com/show_bug.cgi?id=311991
>[still present in 2.6.23.8]
>
>[Drivers really need to actually be ready to receive interrupts when
>they call request_irq(). We keep finding drivers that aren't because
>we enable CONFIG_DEBUG_SHIRQ]
>
>kernel version: 2.6.22.7-85.fc7debug
>modprobe ioatdma during bootup sez:
>
>[ 142.497353] Module ioatdma cannot be unloaded due to unsafe usage in
>drivers/dma/ioatdma.c:829
>[ 142.497906] ACPI: PCI Interrupt 0000:00:08.0[A] -> GSI 16
>(level, low) -> IRQ 16
>[ 142.497945] Unable to handle kernel NULL pointer dereference at
>0000000000000003 RIP:
>[ 142.498002] [<ffffffff8835adc0>]
>:ioatdma:ioat_do_interrupt+0xd/0x50
>[ 142.498770] PGD 10fc46067 PUD 114a56067 PMD 0
>[ 142.499156] Oops: 0000 [1] SMP
>[ 142.499498] last sysfs file: /block/sr0/removable
>[ 142.499753] CPU 3
>[ 142.500049] Modules linked in: ioatdma dell_rbu nfsd
>exportfs lockd nfs_acl
>ipmi_devintf ipmi_si ipmi_msghandler hidp l2cap bluetooth sunr
>pc xt_length ipt_TOS xt_state xt_tcpudp ipt_REJECT ipt_LOG xt_limit
>iptable_mangle iptable_nat nf_nat nf_conntrack_ipv4
>nf_conntrack nfnetlin
>k iptable_filter ip_tables x_tables ppp_deflate zlib_deflate
>ppp_synctty
>ppp_async crc_ccitt ppp_generic slhc bridge dm_mirror dm_multipath d
>m_mod video sbs button dock battery ac tcp_westwood kvm_intel
>kvm sr_mod cdrom
>ata_generic ata_piix serio_raw libata bnx2 rtc_cmos sg joydev
>usb_storage shpchp megaraid_sas sd_mod scsi_mod ext3 jbd
>mbcache ehci_hcd
>ohci_hcd uhci_hcd
>[ 142.505129] Pid: 5239, comm: modprobe Not tainted
>2.6.22.7-85.fc7debug #1
>[ 142.505386] RIP: 0010:[<ffffffff8835adc0>] [<ffffffff8835adc0>]
>:ioatdma:ioat_do_interrupt+0xd/0x50
>[ 142.505892] RSP: 0018:ffff81010ff83c48 EFLAGS: 00010096
>[ 142.506146] RAX: 0000000000001214 RBX: 0000000000000202
>RCX: ffffffff8835b0f5
>[ 142.506405] RDX: 0000000000000000 RSI: ffff81012cc11700
>RDI: 00000000000008f4
>[ 142.506663] RBP: ffff81012cc11700 R08: ffff81012cc11700
>R09: ffff81012cc11700
>[ 142.506919] R10: 000000000000005a R11: ffffffff811f2016
>R12: 0000000000000020
>[ 142.507176] R13: ffff81012cc11700 R14: ffffffff8835adb3
>R15: 00000000000008f4
>[ 142.507434] FS: 00002aaaaaae0250(0000) GS:ffff810105855900(0000)
>knlGS:0000000000000000
>[ 142.507892] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>[ 142.508147] CR2: 0000000000000003 CR3: 0000000110281000
>CR4: 00000000000026e0
>[ 142.508406] Process modprobe (pid: 5239, threadinfo
>ffff81010ff82000, task
>ffff8101106dcf60)
>[ 142.508866] Stack: ffff81012cc11700 0000000000000202
>ffff81012447ab40
>ffffffff81069bd8
>[ 142.509544] ffff81012447ac80 ffffffff8835b0f5
>01ff81012f971070 ffff81012f971070
>[ 142.510176] ffff81012cc11700 ffff81012f971000
>00000000fffffff4 0000000000000000
>[ 142.510566] Call Trace:
>[ 142.511063] [<ffffffff81069bd8>] request_irq+0xcc/0x120
>[ 142.511321] [<ffffffff8835aab7>] :ioatdma:ioat_probe+0x15b/0x457
>[ 142.511581] [<ffffffff8126a916>] _spin_unlock+0x17/0x20
>[ 142.511839] [<ffffffff8112c1be>] pci_device_probe+0xcd/0x134
>[ 142.512097] [<ffffffff811a54a3>] driver_probe_device+0xff/0x17c
>[ 142.512354] [<ffffffff811a5668>] __driver_attach+0x90/0xcc
>[ 142.512609] [<ffffffff811a55d8>] __driver_attach+0x0/0xcc
>[ 142.512865] [<ffffffff811a55d8>] __driver_attach+0x0/0xcc
>[ 142.513120] [<ffffffff811a4824>] bus_for_each_dev+0x43/0x6e
>[ 142.513378] [<ffffffff811a4b9c>] bus_add_driver+0x7b/0x19d
>[ 142.513634] [<ffffffff8112c3a0>] __pci_register_driver+0x68/0x9a
>[ 142.513892] [<ffffffff81055f70>] sys_init_module+0x163f/0x17a1
>[ 142.514153] [<ffffffff81067540>] audit_syscall_entry+0x141/0x174
>[ 142.514414] [<ffffffff81009d2e>] tracesys+0xd5/0xda
>[ 142.514673]
>[ 142.514920]
>[ 142.514920] Code: 8a 42 03 0f b6 d8 31 c0 f6 c3 01 74 31 f6
>c3 02 75 0a 0f b6
>[ 142.516541] RIP [<ffffffff8835adc0>]
>:ioatdma:ioat_do_interrupt+0xd/0x50
>[ 142.516841] RSP <ffff81010ff83c48>
>[ 142.517091] CR2: 0000000000000003
Chuck - We did some significant rework on the ioatdma driver last
summer. Unfortunately it didn't make it into 2.6.23, but it is
available in 2.6.24 as well as out-of-core on our SourceForge site.
Please try the newer code - I believe it will fix your problem.
Thanks,
sln
======================================================================
Mr. Shannon Nelson LAN Access Division, Intel Corp.
[email protected] I don't speak for Intel
(503) 712-7659 Parents can't afford to be squeamish.