netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: 2.6.9-rc2-mm2 fn_hash_insert oops
       [not found] <20040923103723.GA12145@mail.muni.cz>
@ 2004-09-23 11:16 ` Herbert Xu
  2004-09-23 14:02   ` Lukas Hejtmanek
                     ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Herbert Xu @ 2004-09-23 11:16 UTC (permalink / raw)
  To: Lukas Hejtmanek; +Cc: akpm, linux-kernel, davem, netdev

Lukas Hejtmanek <xhejtman@mail.muni.cz> wrote:
> 
> However there is still the issue with endless loop in fn_hash_delete :(

Same problem, same fix.  Can someone think of a generic fix to
list_for_each_*?

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
===== net/ipv4/fib_hash.c 1.22 vs edited =====
--- 1.22/net/ipv4/fib_hash.c	2004-09-22 09:31:48 +10:00
+++ edited/net/ipv4/fib_hash.c	2004-09-23 21:16:04 +10:00
@@ -608,6 +608,7 @@
 	struct fn_hash *table = (struct fn_hash*)tb->tb_data;
 	struct fib_node *f;
 	struct fib_alias *fa, *fa_to_delete;
+	struct list_head *fa_head;
 	int z = r->rtm_dst_len;
 	struct fn_zone *fz;
 	u32 key;
@@ -633,7 +634,8 @@
 		return -ESRCH;
 
 	fa_to_delete = NULL;
-	list_for_each_entry(fa, fa->fa_list.prev, fa_list) {
+	fa_head = fa->fa_list.prev;
+	list_for_each_entry(fa, fa_head, fa_list) {
 		struct fib_info *fi = fa->fa_info;
 
 		if ((!r->rtm_type ||

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 2.6.9-rc2-mm2 fn_hash_insert oops
  2004-09-23 11:16 ` 2.6.9-rc2-mm2 fn_hash_insert oops Herbert Xu
@ 2004-09-23 14:02   ` Lukas Hejtmanek
  2004-09-23 19:18   ` Ingo Molnar
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Lukas Hejtmanek @ 2004-09-23 14:02 UTC (permalink / raw)
  To: Herbert Xu; +Cc: akpm, linux-kernel, davem, netdev

On Thu, Sep 23, 2004 at 09:16:32PM +1000, Herbert Xu wrote:
> Lukas Hejtmanek <xhejtman@mail.muni.cz> wrote:
> > 
> > However there is still the issue with endless loop in fn_hash_delete :(
> 
> Same problem, same fix.  Can someone think of a generic fix to
> list_for_each_*?

It helped. Thankx.

-- 
Lukáš Hejtmánek

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 2.6.9-rc2-mm2 fn_hash_insert oops
  2004-09-23 11:16 ` 2.6.9-rc2-mm2 fn_hash_insert oops Herbert Xu
  2004-09-23 14:02   ` Lukas Hejtmanek
@ 2004-09-23 19:18   ` Ingo Molnar
  2004-09-23 20:36   ` David S. Miller
  2004-09-23 21:38   ` Nuno Ferreira
  3 siblings, 0 replies; 6+ messages in thread
From: Ingo Molnar @ 2004-09-23 19:18 UTC (permalink / raw)
  To: Herbert Xu; +Cc: Lukas Hejtmanek, akpm, linux-kernel, davem, netdev


* Herbert Xu <herbert@gondor.apana.org.au> wrote:

> Lukas Hejtmanek <xhejtman@mail.muni.cz> wrote:
> > 
> > However there is still the issue with endless loop in fn_hash_delete :(
> 
> Same problem, same fix.  Can someone think of a generic fix to
> list_for_each_*?
> 
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

did the trick here too.

on a related note, e100 ifup still gives:

enable_irq(16) unbalanced from c021afa5
 [<c01322a0>] enable_irq+0xd0/0xe0
 [<c021afa5>] e100_up+0xf5/0x1e0
 [<c021afa5>] e100_up+0xf5/0x1e0
 [<c021a500>] e100_intr+0x0/0x130
 [<c021c19d>] e100_open+0x2d/0x80
 [<c014741a>] handle_mm_fault+0x14a/0x1f0
 [<c02d9c55>] dev_open+0x85/0xa0
 [<c02ddc04>] dev_mc_upload+0x24/0x40
 [<c02db363>] dev_change_flags+0x53/0x130
 [<c0314bcb>] devinet_ioctl+0x26b/0x6c0
 [<c0317106>] inet_ioctl+0x66/0xb0
 [<c02d1019>] sock_ioctl+0xc9/0x290
 [<c0169eda>] sys_ioctl+0xca/0x230
 [<c01140c0>] do_page_fault+0x0/0x6f0
 [<c01044c9>] sysenter_past_esp+0x52/0x71

this is with Andrew's current tree (x.bz2).

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 2.6.9-rc2-mm2 fn_hash_insert oops
  2004-09-23 11:16 ` 2.6.9-rc2-mm2 fn_hash_insert oops Herbert Xu
  2004-09-23 14:02   ` Lukas Hejtmanek
  2004-09-23 19:18   ` Ingo Molnar
@ 2004-09-23 20:36   ` David S. Miller
  2004-09-23 23:29     ` Martin Diehl
  2004-09-23 21:38   ` Nuno Ferreira
  3 siblings, 1 reply; 6+ messages in thread
From: David S. Miller @ 2004-09-23 20:36 UTC (permalink / raw)
  To: Herbert Xu; +Cc: xhejtman, akpm, linux-kernel, netdev

On Thu, 23 Sep 2004 21:16:32 +1000
Herbert Xu <herbert@gondor.apana.org.au> wrote:

> Lukas Hejtmanek <xhejtman@mail.muni.cz> wrote:
> > 
> > However there is still the issue with endless loop in fn_hash_delete :(
> 
> Same problem, same fix.

Applied, thanks Herbert.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 2.6.9-rc2-mm2 fn_hash_insert oops
  2004-09-23 11:16 ` 2.6.9-rc2-mm2 fn_hash_insert oops Herbert Xu
                     ` (2 preceding siblings ...)
  2004-09-23 20:36   ` David S. Miller
@ 2004-09-23 21:38   ` Nuno Ferreira
  3 siblings, 0 replies; 6+ messages in thread
From: Nuno Ferreira @ 2004-09-23 21:38 UTC (permalink / raw)
  To: Herbert Xu; +Cc: akpm, Linux Kernel, netdev

On Qui, 2004-09-23 at 21:16 +1000, Herbert Xu wrote:
> Lukas Hejtmanek <xhejtman@mail.muni.cz> wrote:
> > 
> > However there is still the issue with endless loop in fn_hash_delete :(
> 
> Same problem, same fix.  Can someone think of a generic fix to
> list_for_each_*?
> 

This also fixed the problem I reported earlier with the machine freezing
when my Speedtouch USB ADSL modem connected.

Thanks

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 2.6.9-rc2-mm2 fn_hash_insert oops
  2004-09-23 20:36   ` David S. Miller
@ 2004-09-23 23:29     ` Martin Diehl
  0 siblings, 0 replies; 6+ messages in thread
From: Martin Diehl @ 2004-09-23 23:29 UTC (permalink / raw)
  To: David S. Miller; +Cc: Herbert Xu, xhejtman, akpm, linux-kernel, netdev

On Thu, 23 Sep 2004, David S. Miller wrote:

> On Thu, 23 Sep 2004 21:16:32 +1000
> Herbert Xu <herbert@gondor.apana.org.au> wrote:
> 
> > Lukas Hejtmanek <xhejtman@mail.muni.cz> wrote:
> > > 
> > > However there is still the issue with endless loop in fn_hash_delete :(
> > 
> > Same problem, same fix.
> 
> Applied, thanks Herbert.

FYI: it seems applying these two list_for_each fixes did also solve a 
related issue with different symptoms, which I was just seeing:

Unable to handle kernel NULL pointer dereference at virtual address 00000028
 printing eip:
c0267a35
*pde = 00000000
Oops: 0000 [#1]
SMP 
Modules linked in: tulip soundcore parport_pc lp parport usblp ohci_hcd usbcore ne2k_pci 8390 crc32 rtc
CPU:    0
EIP:    0060:[<c0267a35>]    Not tainted VLI
EFLAGS: 00010297   (2.6.9-rc2-mm2) 
EIP is at fn_hash_insert+0x225/0x3e0
eax: 00000000   ebx: c3580401   ecx: cadcc2ec   edx: 00000000
esi: c358bea0   edi: cad03314   ebp: cbd335cc   esp: c358be30
ds: 007b   es: 007b   ss: 0068
Process route (pid: 2667, threadinfo=c358a000 task=c333b850)
Stack: 00000000 cadcc2ec 00000000 0002a8c0 00000001 00000000 cbd53ca8 cad0330c 
       ffffffef 00000000 c0141a72 00000000 c01422e7 cbc3e600 ffffff97 0000890b 
       0000890b c358a000 c02654c7 c11ca9f4 c358bea0 c358bf10 c358be90 00000000 
Call Trace:
 [<c0141a72>] check_spinlock_acquired+0x12/0x20
 [<c01422e7>] check_slabp+0x17/0xe0
 [<c02654c7>] ip_rt_ioctl+0x137/0x170
 [<c0260e90>] inet_ioctl+0x40/0xa0
 [<c021ea30>] sock_ioctl+0x2c0/0x300
 [<c0168256>] sys_ioctl+0x266/0x2b0
 [<c0104317>] syscall_call+0x7/0xb
Code: 75 14 8b 74 24 50 8a 46 06 38 47 0e 75 08 39 ea 0f 84 ae 01 00 00 89 cf 8b 07 89 c1 8d 74 26 00 3b 7f 04 74 0b 8b 57 08 8b 04 24 <39> 42 28 74 c8 81 e3 00 08 00 00 75 04 8b 7c 24 04 8b 54 24 58 

Thanks,
Martin

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2004-09-23 23:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20040923103723.GA12145@mail.muni.cz>
2004-09-23 11:16 ` 2.6.9-rc2-mm2 fn_hash_insert oops Herbert Xu
2004-09-23 14:02   ` Lukas Hejtmanek
2004-09-23 19:18   ` Ingo Molnar
2004-09-23 20:36   ` David S. Miller
2004-09-23 23:29     ` Martin Diehl
2004-09-23 21:38   ` Nuno Ferreira

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).