diff mbox

ipv6: Log the explicit address that triggered DAD failure

Message ID 1250089107.6641.36.camel@fnki-nb00130
State Superseded, archived
Delegated to: David Miller
Headers show

Commit Message

Jens Rosenboom Aug. 12, 2009, 2:58 p.m. UTC
If an interface has multiple addresses, the current message for DAD
failure isn't really helpful, so this patch adds the address itself to
the printk.

Signed-off-by: Jens Rosenboom <jens@mcbone.net>

---

 		struct in6_addr addr;


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Brian Haley Aug. 13, 2009, 1:33 a.m. UTC | #1
Jens Rosenboom wrote:
> If an interface has multiple addresses, the current message for DAD
> failure isn't really helpful, so this patch adds the address itself to
> the printk.
> 
> Signed-off-by: Jens Rosenboom <jens@mcbone.net>
> 
> ---
> 
> diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
> index 43b3c9f..01a4b25 100644
> --- a/net/ipv6/addrconf.c
> +++ b/net/ipv6/addrconf.c
> @@ -1403,8 +1403,8 @@ void addrconf_dad_failure(struct inet6_ifaddr
> *ifp)
>  	struct inet6_dev *idev = ifp->idev;
>  
>  	if (net_ratelimit())
> -		printk(KERN_INFO "%s: IPv6 duplicate address detected!\n",
> -			ifp->idev->dev->name);
> +		printk(KERN_INFO "%s: IPv6 duplicate address %pI6 detected!\n",
> +			ifp->idev->dev->name, &ifp->addr);
>  
>  	if (idev->cnf.accept_dad > 1 && !idev->cnf.disable_ipv6) {
>  		struct in6_addr addr;

I have no problem with this patch, I should have done this when I
last changed this code.

The other thing I've come across that is similar to this is the
issue that when DAD fails, /sbin/ip doesn't show that it did,
the address just stays in a tentative state forever:

    inet6 dead:beef::1/64 scope global tentative 
       valid_lft forever preferred_lft forever

Does anyone have an issue of adding a "dadfailed" flag to make
this more obvious:

    inet6 dead:beef::1/64 scope global tentative dadfailed
       valid_lft forever preferred_lft forever

-Brian
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 43b3c9f..01a4b25 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -1403,8 +1403,8 @@  void addrconf_dad_failure(struct inet6_ifaddr
*ifp)
 	struct inet6_dev *idev = ifp->idev;
 
 	if (net_ratelimit())
-		printk(KERN_INFO "%s: IPv6 duplicate address detected!\n",
-			ifp->idev->dev->name);
+		printk(KERN_INFO "%s: IPv6 duplicate address %pI6 detected!\n",
+			ifp->idev->dev->name, &ifp->addr);
 
 	if (idev->cnf.accept_dad > 1 && !idev->cnf.disable_ipv6) {