inconsistent lock state in 2.6.18.1

From: John M Flinchbaugh
Date: Wed Oct 25 2006 - 07:03:52 EST


I see this OOPS on boot with 2.6.18.1/amd64:
[ 113.147347] =================================
[ 113.147561] [ INFO: inconsistent lock state ]
[ 113.147668] ---------------------------------
[ 113.147775] inconsistent {in-hardirq-W} -> {hardirq-on-W} usage.
[ 113.147883] dhclient3/1787 [HC0[0]:SC0[1]:HE1:SE0] takes:
[ 113.147991] (&ei_local->page_lock){+...}, at: [<ffffffff88080fbb>] ei_start_xmit+0x95/0x24e [8390]
[ 113.148274] {in-hardirq-W} state was registered at:
[ 113.148382] [<ffffffff802443d5>] lock_acquire+0x7a/0xa1
[ 113.148556] [<ffffffff80438c09>] _spin_lock+0x2e/0x3c
[ 113.148730] [<ffffffff880808e0>] ei_interrupt+0x44/0x2fb [8390]
[ 113.148904] [<ffffffff80258f9f>] handle_IRQ_event+0x2b/0x64
[ 113.149078] [<ffffffff80259086>] __do_IRQ+0xae/0x114
[ 113.149251] [<ffffffff8020c21a>] do_IRQ+0xee/0x100
[ 113.149424] [<ffffffff80209dbd>] common_interrupt+0x65/0x66
[ 113.149596] irq event stamp: 20582
[ 113.149703] hardirqs last enabled at (20582): [<ffffffff8043916b>] _spin_unlock_irqrestore+0x3f/0x69
[ 113.149940] hardirqs last disabled at (20581): [<ffffffff80438e74>] _spin_lock_irqsave+0x13/0x46
[ 113.150176] softirqs last enabled at (20456): [<ffffffff880037b2>] unix_release_sock+0x7c/0x218 [unix]
[ 113.150417] softirqs last disabled at (20578): [<ffffffff803ddbe8>] dev_queue_xmit+0xe2/0x26a
[ 113.150654]
[ 113.150654] other info that might help us debug this:
[ 113.150866] 1 lock held by dhclient3/1787:
[ 113.150973] #0: (&dev->_xmit_lock){-+..}, at: [<ffffffff803ea9c6>] __qdisc_run+0x77/0x1e5
[ 113.151272]
[ 113.151273] stack backtrace:
[ 113.151484]
[ 113.151485] Call Trace:
[ 113.151799] [<ffffffff8020ae85>] show_trace+0xae/0x342
[ 113.151919] [<ffffffff8020b12e>] dump_stack+0x15/0x17
[ 113.152039] [<ffffffff8024293b>] print_usage_bug+0x259/0x26a
[ 113.152230] [<ffffffff802431ae>] mark_lock+0x218/0x3e2
[ 113.152421] [<ffffffff80243d97>] __lock_acquire+0x492/0xa56
[ 113.152612] [<ffffffff802443d6>] lock_acquire+0x7b/0xa1
[ 113.152804] [<ffffffff80438c0a>] _spin_lock+0x2f/0x3c
[ 113.153002] [<ffffffff88080fbb>] :8390:ei_start_xmit+0x95/0x24e
[ 113.153114] [<ffffffff803dbac0>] dev_hard_start_xmit+0x1d6/0x24b
[ 113.153696] [<ffffffff803eaa52>] __qdisc_run+0x103/0x1e5
[ 113.154282] [<ffffffff803ddc45>] dev_queue_xmit+0x13f/0x26a
[ 113.154857] [<ffffffff882e2d72>] :af_packet:packet_sendmsg_spkt+0x1cf/0x1f7
[ 113.154975] [<ffffffff803d0a8c>] sock_sendmsg+0x111/0x130
[ 113.155535] [<ffffffff803d1f23>] sys_sendto+0x106/0x12d
[ 113.156096] [<ffffffff80209886>] system_call+0x7e/0x83
[ 113.156209] DWARF2 unwinder stuck at system_call+0x7e/0x83
[ 113.156316] Leftover inexact backtrace:

It seems to be ISCs dhclient3 talking to a NIC which is driven by ne2k_pci
module:
[ 91.706329] eth0: RealTek RTL-8029 found at 0xa400, IRQ 225, 00:40:05:59:11:18.

Here's the ver_linux:
If some fields are empty or look unusual you may have an old version.
Compare to the current minimal requirements in Documentation/Changes.

Linux butterfly 2.6.18.1 #1 SMP PREEMPT Wed Oct 25 06:26:53 EDT 2006 x86_64 GNU/Linux

Gnu C 4.1.2
Gnu make 3.81
binutils 2.17
util-linux 2.12r
mount 2.12r
module-init-tools 3.2.2
e2fsprogs 1.40-WIP
reiserfsprogs 3.6.19
quota-tools 3.14.
Linux C Library 2.3.6
Dynamic linker (ldd) 2.3.6
Procps 3.2.7
Net-tools 1.60
Console-tools 0.2.3
Sh-utils 5.97
udev 100
Modules Loaded radeon drm binfmt_misc rfcomm l2cap bluetooth nfs nfsd exportfs lockd nfs_acl sunrpc thermal fan button ac battery autofs4 act_police sch_ingress cls_u32 sch_sfq sch_cbq ipt_REJECT xt_tcpudp iptable_filter iptable_nat ip_nat ip_conntrack nfnetlink ip_tables x_tables ipv6 af_packet dm_snapshot dm_mirror dm_mod it87 hwmon_vid hwmon eeprom i2c_isa lp cpufreq_ondemand powernow_k8 freq_table processor sr_mod sbp2 ide_generic ide_disk ide_cd cdrom eth1394 amd74xx generic ide_core usbhid snd_intel8x0 tsdev 8250_pnp snd_ac97_codec snd_ac97_bus snd_pcm_oss snd_mixer_oss ohci_hcd snd_pcm ohci1394 ieee1394 ehci_hcd evdev sata_nv i2c_nforce2 i2c_core usbcore snd_timer snd_page_alloc libata snd_mpu401 snd_mpu401_uart snd_rawmidi snd_seq_device sk98lin forcedeth ne2k_pci 8390 8250 serial_core parport_pc parport floppy snd soundcore pcspkr psmouse serio_raw unix
--
John M Flinchbaugh
john@xxxxxxxxxx

Attachment: signature.asc
Description: Digital signature