[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20071115.025158.254212538.davem@davemloft.net>
Date: Thu, 15 Nov 2007 02:51:58 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: mingo@...e.hu
Cc: mpm@...enic.com, rjw@...k.pl, linux-kernel@...r.kernel.org,
akpm@...ux-foundation.org, torvalds@...ux-foundation.org
Subject: Re: [bug] SLOB crash, 2.6.24-rc2
From: Ingo Molnar <mingo@...e.hu>
Date: Thu, 15 Nov 2007 11:43:32 +0100
> The crash logs contain this:
>
> VFS: Mounted root (ext3 filesystem) readonly.
> Freeing unused kernel memory: 396k freed
> Write protecting the kernel read-only data: 2056k
> udev: renamed network interface eth1 to eth0
> udev: renamed network interface eth0_rename to eth1
> eth0: link down
> ADDRCONF(NETDEV_UP): eth0: link is not ready
> EXT3 FS on sda6, internal journal
> kjournald starting. Commit interval 5 seconds
>
> followed by the crash shortly afterwards (but not immediately). With the
> non-crashing kernel i dont get those "renamed network interface"
> messages.
>
> network interface renaming has been a historic source of pain for me so
> i frequently have to 'twiddle' the networking config to make it work
> again on new kernels. Perhaps because i'm using bzImage kernels.
> User-space is Fedora 8, so fairly recent.
Yeah I wish udev would just leave the damn devices alone.
It even does things like try to rename a network device to the same
name it already has, and other strange stuff.
But that log difference is a good clue.
Because udev can try to rename a network device stupidly to a name the
device already has we added a patch to just short circuit this case in
the networking. We did this because otherwise the generic device
layer gives an ugly stack backtrace via dev_rename().
Therefore, you might want to see if reverting that patch (attached
below) has some effect, once you are able to trigger it again.
Thanks Ingo.
commit c8d90dca3211966ba5189e0f3d4bccd558d9ae08
Author: Stephen Hemminger <shemminger@...ux-foundation.org>
Date: Fri Oct 26 03:53:42 2007 -0700
[NET] dev_change_name: ignore changes to same name
Prevent error/backtrace from dev_rename() when changing
name of network device to the same name. This is a common
situation with udev and other scripts that bind addr to device.
Signed-off-by: Stephen Hemminger <shemminger@...ux-foundation.org>
Signed-off-by: David S. Miller <davem@...emloft.net>
diff --git a/net/core/dev.c b/net/core/dev.c
index f1647d7..ddfef3b 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -883,6 +883,9 @@ int dev_change_name(struct net_device *dev, char *newname)
if (!dev_valid_name(newname))
return -EINVAL;
+ if (strncmp(newname, dev->name, IFNAMSIZ) == 0)
+ return 0;
+
memcpy(oldname, dev->name, IFNAMSIZ);
if (strchr(newname, '%')) {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists