Re: 2.6.22-rc4-mm2: Assigning IP address fails

3 messages, 3 authors, 2007-06-08 · open the first message on its own page

Re: 2.6.22-rc4-mm2: Assigning IP address fails

From: Andrew Morton <akpm@linux-foundation.org>
Date: 2007-06-07 22:09:05

On Thu, 7 Jun 2007 17:46:09 -0400
jfannin@gmail.com (Joseph Fannin) wrote:
On Wed, Jun 06, 2007 at 10:03:13PM -0700, Andrew Morton wrote:
quoted
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc4/2.6.22-rc4-mm2/
    I'm not able to bring an ethernet interface down and back up again
with this if avahi-autoipd is installed on my Ubuntu boxes.  I've seen
it on three different computers with different NIC hardware.

    I've worked out an easy way to reproduce it without
avahi-autoipd.  Starting with eth0 up (address assigned by DHCP):

  # ifdown eth0
  < dhclient makes the normal noise about releasing the address >
  # ip addr add 169.254.255.67/16 brd 169.254.255.255 label eth0:avahi scope link dev eth0
  # ip addr del 169.154.255.67/16 brd 169.254.255.255 label eth0:avahi scope link dev eth0
  # ifup eth0
  SIOCSIFADDR: No buffer space available    < -- first sign of trouble HERE
  < dhclient copyright boilerplate >
  Listening on LPF/eth0/<MAC addr>
  Sending on   LPF/eth0/<MAC addr>
  Sending on   Socket/fallback
  DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5
  DHCPOFFER from < DHCP server >
  DHCPREQUEST on eth0 to 255.255.255.255 port 67
  DHCPACK from  < DHCP server >
  SIOCSIFADDR: No buffer space available
  SIOCSIFNETMASK: Cannot assign requested address
  SIOCSIFBRDADDR: Cannot assign requested address
  SIOCADDRTL No such process
  bound to < IP address > -- renewal in XXXX seconds
  #

    At this point, the interface is up, but has no address assigned.
Manually assigning one with ifconfig fails:

  # ifconfig eth0 netmask 255.255.255.0 172.16.0.1
  SIOCSIFNETMASK: Cannot assign requested address
  SIOCSIFADDR: No buffer space available
  #

... and a reboot is the only way I've been able to get the interface
to work again.

    The last kernels I tried were 2.6.22-rc3 and *I think*
2.6.22-rc1-mm1, neither of which had this problem.  I will test
2.6.22-rc4 and 2.6.22-rc3-mm1 later, but I'm out of time today.

    I've attached my .config .
Yep, thanks - Miles has reported the same thing.

Re: 2.6.22-rc4-mm2: Assigning IP address fails

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2007-06-07 22:56:06

On Thu, Jun 07, 2007 at 03:06:53PM -0700, Andrew Morton wrote:
quoted
    I'm not able to bring an ethernet interface down and back up again
with this if avahi-autoipd is installed on my Ubuntu boxes.  I've seen
it on three different computers with different NIC hardware.
Sorry, it was my patch.  This patch should fix it.

[IPV4]: Do not remove idev when addresses are cleared

Now that we create idev before addresses are added, it no longer makes
sense to remove them when addresses are all deleted.

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

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} [off-list ref]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
index 354e800..0cf813f 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -327,12 +327,8 @@ static void __inet_del_ifa(struct in_device *in_dev, struct in_ifaddr **ifap,
 		}
 
 	}
-	if (destroy) {
+	if (destroy)
 		inet_free_ifa(ifa1);
-
-		if (!in_dev->ifa_list)
-			inetdev_destroy(in_dev);
-	}
 }
 
 static void inet_del_ifa(struct in_device *in_dev, struct in_ifaddr **ifap,

Re: 2.6.22-rc4-mm2: Assigning IP address fails

From: David Miller <davem@davemloft.net>
Date: 2007-06-08 01:35:59

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: Fri, 8 Jun 2007 08:54:52 +1000
On Thu, Jun 07, 2007 at 03:06:53PM -0700, Andrew Morton wrote:
quoted
quoted
    I'm not able to bring an ethernet interface down and back up again
with this if avahi-autoipd is installed on my Ubuntu boxes.  I've seen
it on three different computers with different NIC hardware.
Sorry, it was my patch.  This patch should fix it.

[IPV4]: Do not remove idev when addresses are cleared

Now that we create idev before addresses are added, it no longer makes
sense to remove them when addresses are all deleted.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Applied, thanks Herbert.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help