From: Flavio Bruno Leitner <fbl@conectiva.com.br>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org
Subject: Re: kernel BUG at kernel/timer.c:370!
Date: Thu, 11 Mar 2004 12:43:31 -0300 [thread overview]
Message-ID: <20040311154331.GA1755@conectiva.com.br> (raw)
In-Reply-To: <20040305150615.0ae07114.akpm@osdl.org>
[-- Attachment #1: Type: text/plain, Size: 981 bytes --]
On Fri, Mar 05, 2004 at 03:06:15PM -0800, Andrew Morton wrote:
> Flavio Bruno Leitner <fbl@conectiva.com.br> wrote:
> >
> > My laptop is an Acer TravelMate 630 and somewhere between 2.6.2 and 2.6.3-rc2
> > begins returning an oops right after boot.
> >
> > kernel BUG at kernel/timer.c:370!
>
> Oh fantastic. Something scrogged the timer lists.
>
> I suggest you try stripping your kernel config down the the bare minimum
> which is needed to boot, see if that fixes it and if so, start
> reintroducing things until you've worked out which driver is causing the
> problem.
Done!
The oops happens when the patch is applied, just do ifconfig eth0 down
and ifconfig eth0 <with another ip> up. The dhcp always get wrong ip,
so my rc.local run ifconfig down and up. Removing the patch, I can't
reproduce it anymore.
This oops still happens with newer kernels.
Thanks!
--
Flávio Bruno Leitner <fbl@conectiva.com.br>
[ E74B 0BD0 5E05 C385 239E 531C BC17 D670 7FF0 A9E0 ]
[-- Attachment #2: ifdown-up-oops.patch --]
[-- Type: text/plain, Size: 2341 bytes --]
diff -Nru a/include/linux/inetdevice.h b/include/linux/inetdevice.h
--- a/include/linux/inetdevice.h Fri Apr 11 03:35:44 2003
+++ b/include/linux/inetdevice.h Thu Jan 29 20:57:46 2004
@@ -21,6 +21,7 @@
int medium_id;
int no_xfrm;
int no_policy;
+ int force_igmp_version;
void *sysctl;
};
diff -Nru a/net/ipv4/igmp.c b/net/ipv4/igmp.c
--- a/net/ipv4/igmp.c Sat Jan 24 15:54:51 2004
+++ b/net/ipv4/igmp.c Mon Feb 2 21:43:31 2004
@@ -126,10 +126,14 @@
* contradict to specs provided this delay is small enough.
*/
-#define IGMP_V1_SEEN(in_dev) ((in_dev)->mr_v1_seen && \
- time_before(jiffies, (in_dev)->mr_v1_seen))
-#define IGMP_V2_SEEN(in_dev) ((in_dev)->mr_v2_seen && \
- time_before(jiffies, (in_dev)->mr_v2_seen))
+#define IGMP_V1_SEEN(in_dev) (ipv4_devconf.force_igmp_version == 1 || \
+ (in_dev)->cnf.force_igmp_version == 1 || \
+ ((in_dev)->mr_v1_seen && \
+ time_before(jiffies, (in_dev)->mr_v1_seen)))
+#define IGMP_V2_SEEN(in_dev) (ipv4_devconf.force_igmp_version == 2 || \
+ (in_dev)->cnf.force_igmp_version == 2 || \
+ ((in_dev)->mr_v2_seen && \
+ time_before(jiffies, (in_dev)->mr_v2_seen)))
static void igmpv3_add_delrec(struct in_device *in_dev, struct ip_mc_list *im);
static void igmpv3_del_delrec(struct in_device *in_dev, __u32 multiaddr);
@@ -1063,7 +1067,7 @@
reporter = im->reporter;
igmp_stop_timer(im);
- if (in_dev->dev->flags & IFF_UP) {
+ if (!in_dev->dead) {
if (IGMP_V1_SEEN(in_dev))
goto done;
if (IGMP_V2_SEEN(in_dev)) {
@@ -1094,6 +1098,8 @@
if (im->multiaddr == IGMP_ALL_HOSTS)
return;
+ if (in_dev->dead)
+ return;
if (IGMP_V1_SEEN(in_dev) || IGMP_V2_SEEN(in_dev)) {
spin_lock_bh(&im->lock);
igmp_start_timer(im, IGMP_Initial_Report_Delay);
@@ -1167,7 +1173,7 @@
igmpv3_del_delrec(in_dev, im->multiaddr);
#endif
igmp_group_added(im);
- if (in_dev->dev->flags & IFF_UP)
+ if (!in_dev->dead)
ip_rt_multicast_event(in_dev);
out:
return;
@@ -1191,7 +1197,7 @@
write_unlock_bh(&in_dev->lock);
igmp_group_dropped(i);
- if (in_dev->dev->flags & IFF_UP)
+ if (!in_dev->dead)
ip_rt_multicast_event(in_dev);
ip_ma_put(i);
@@ -1266,6 +1272,9 @@
struct ip_mc_list *i;
ASSERT_RTNL();
+
+ /* Deactivate timers */
+ ip_mc_down(in_dev);
write_lock_bh(&in_dev->lock);
while ((i = in_dev->mc_list) != NULL) {
[-- Attachment #3: oops.txt --]
[-- Type: text/plain, Size: 1161 bytes --]
Hello!
My laptop is an Acer TravelMate 630 and somewhere between 2.6.2 and 2.6.3-rc2
begins returning an oops right after boot.
kernel BUG at kernel/timer.c:370!
invalid operand: 0000 [#1]
CPU: 0
EIP: 0060:[<c0127177>] Not tainted
EFLAGS: 00010006
EIP is at cascade+0x44/0x4e
eax: c03e4368 ebx: c03e02b0 ecx: fffce200 edx: c03e03b0
esi: c03e0398 edi: c03dfa80 ebp: c0387f08 esp: c0387ef4
ds: 007b es: 007b ss: 0068
Process swapper (pid: 0, threadinfo=c0386000 task=c0306520)
Stack: c03dfa80 cde229c4 00000000 c03df7a8 c0387f20 c0387f38 c0127732 c03dfa80
c03e0288 00000022 c0387f34 c0387f20 c0387f20 c0308d64 00000001 c03df7a8
0000000a c0387f54 c0123b7c c03df7a8 00000046 00000000 c037da00 c0308d64
Call Trace:
[<c0127732>] run_timer_softirq+0xec/0x16b
[<c0123b7c>] do_softirq+0x98/0x9a
[<c010d2ff>] do_IRQ+0xe4/0x11c
[<c010b974>] common_interrupt+0x18/0x20
[<d08c8257>] acpi_processor_idle+0xe9/0x1e5 [processor]
[<c0105000>] _stext+0x0/0x2a
[<c01090b7>] cpu_idle+0x2f/0x38
[<c038c70a>] start_kernel+0x185/0x1c9
[<c038c44a>] unknow_bootoption+0x0/0x108
Code: 0f 0b 72 01 3b 05 2d c0 eb d4 55 89 e5 56 53 83 ec 04 0f bf
next prev parent reply other threads:[~2004-03-11 15:45 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-05 17:40 kernel BUG at kernel/timer.c:370! Flavio Bruno Leitner
2004-03-05 23:06 ` Andrew Morton
2004-03-11 15:43 ` Flavio Bruno Leitner [this message]
2004-03-11 21:42 ` Andrew Morton
2004-03-12 19:11 ` Flavio Bruno Leitner
-- strict thread matches above, loose matches on Subject: below --
2004-04-01 19:05 Craig, Dave
2004-03-31 21:39 Craig, Dave
2004-03-31 22:15 ` Andrew Morton
2004-03-31 17:16 Craig, Dave
2004-03-31 19:52 ` Andrew Morton
2004-04-01 14:24 ` Flavio Bruno Leitner
2004-04-01 17:24 ` Flavio Bruno Leitner
2004-04-01 18:37 ` Andrew Morton
2004-04-02 14:42 ` Flavio Bruno Leitner
2004-03-31 16:59 Craig, Dave
2004-02-14 3:33 Rafael D'Halleweyn (List)
2004-02-14 8:21 ` Andrew Morton
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=20040311154331.GA1755@conectiva.com.br \
--to=fbl@conectiva.com.br \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
/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