From: Phil Oester <kernel@linuxace.com>
To: netdev@oss.sgi.com
Subject: Unitialized queue_lock oops?
Date: Fri, 3 Jun 2005 16:24:13 -0700 [thread overview]
Message-ID: <20050603232413.GA29308@linuxace.com> (raw)
In my ongoing attempts to migrate to anything higher than 2.6.10,
I decided to retest 2.6.11-rc2 but backout the problematic LLTX
patch. I also enabled spinlock debugging, and hit an odd BUG.
Full oops output below, but the summary is:
kernel BUG at include/asm/spinlock.h:92!
which is here:
BUG_ON(lock->magic != SPINLOCK_MAGIC);
And we got there via dev_queue_xmit:
/* Grab device queue */
spin_lock(&dev->queue_lock);
-- no complaints yet, so queue_lock must be initialized here
rc = q->enqueue(skb, q);
qdisc_run(dev);
-- qdisc_run drops queue_lock briefly - it get mangled while it's dropped?
spin_unlock(&dev->queue_lock);
-- now we hit the BUG - queue_lock->magic != SPINLOCK_MAGIC.
I know the proposed LLTX changes were meant to address a race while
the queue_lock was dropped - is the above another illustration of the
race potential?
Phil
kernel BUG at include/asm/spinlock.h:92!
invalid operand: 0000 [#1]
SMP DEBUG_PAGEALLOC
CPU: 1
EIP: 0060:[<c0289dc4>] Not tainted VLI
EFLAGS: 00010217 (2.6.11-rc2)
EIP is at _spin_unlock+0x24/0x30
eax: f7ae7ec0 ebx: f6d5ff00 ecx: f6d5ffbc edx: f7ae7ec0
esi: f7ae3800 edi: c4a45f50 ebp: c0333d64 esp: c0333d64
ds: 007b es: 007b ss: 0068
Process swapper (pid: 0, threadinfo=c0333000 task=c198aaf0)
Stack: c0333d88 c023168a c0272eea f7ae3800 f7ae35bc 00000000 f590c89c f590c888
c63cc020 c0333da8 c0249873 c02497c0 f590c888 c4a45f50 00000000 00000004
00000002 c0333ddc c023b61e 00000000 f7ae3800 c0333dcc c02497c0 80000000
Call Trace:
[<c010322a>] show_stack+0x7a/0x90
[<c01033ad>] show_registers+0x14d/0x1b0
[<c01035b9>] die+0xf9/0x180
[<c01039e9>] do_invalid_op+0xa9/0xc0
[<c0102ebb>] error_code+0x2b/0x30
[<c023168a>] dev_queue_xmit+0x20a/0x290
[<c0249873>] ip_finish_output2+0xb3/0x1c0
[<c023b61e>] nf_hook_slow+0xae/0xe0
[<c024734e>] ip_finish_output+0x1ee/0x200
[<c0245d3c>] ip_forward_finish+0x2c/0x50
[<c023b61e>] nf_hook_slow+0xae/0xe0
[<c0245c7c>] ip_forward+0x19c/0x230
[<c0244ad8>] ip_rcv_finish+0x1b8/0x230
[<c023b61e>] nf_hook_slow+0xae/0xe0
[<c0244715>] ip_rcv+0x3b5/0x470
[<c0231bea>] netif_receive_skb+0x13a/0x190
[<c01f9ca6>] e1000_clean_rx_irq+0x156/0x480
[<c01f9895>] e1000_clean+0x45/0xf0
[<c0231df0>] net_rx_action+0x90/0x130
[<c011a878>] __do_softirq+0xb8/0xd0
[<c010478d>] do_softirq+0x4d/0x60
=======================
[<c0104668>] do_IRQ+0x68/0xa0
[<c0102d86>] common_interrupt+0x1a/0x20
[<c010059f>] cpu_idle+0x5f/0x70
[<00000000>] 0x0
[<c198bfbc>] 0xc198bfbc
Code: 8d bc 27 00 00 00 00 55 89 c2 89 e5 81 78 04 ad 4e ad de 75 16 0f b6 02 84 c0 7f 05 c6 02 01
5d c3 0f 0b 5d 00 08 9b 29 c0 eb f1 <0f> 0b 5c 00 08 9b 29 c0 eb e0 89 f6 55 89 e5 f0 81 00 00 00 00
next reply other threads:[~2005-06-03 23:24 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-03 23:24 Phil Oester [this message]
2005-06-03 23:51 ` Unitialized queue_lock oops? Herbert Xu
2005-06-04 0:00 ` Phil Oester
2005-06-04 0:34 ` Herbert Xu
2005-06-04 0:38 ` Phil Oester
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050603232413.GA29308@linuxace.com \
--to=kernel@linuxace.com \
--cc=netdev@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).