RE: [PATCH 01/01] ipv6: RFC4214 Support (v2.0)
From: Templin, Fred L <hidden>
Date: 2007-11-13 17:29:59
Vlad,
-----Original Message----- From: Vlad Yasevich [mailto:vladislav.yasevich@hp.com] Sent: Tuesday, November 13, 2007 9:00 AM To: Templin, Fred L Cc: netdev@vger.kernel.org; YOSHIFUJI Hideaki / 吉藤英明 Subject: Re: [PATCH 01/01] ipv6: RFC4214 Support (v2.0) Hi Fred Templin, Fred L wrote:quoted
quoted
quoted
+ return; + } + sit_add_v4_addrs(idev); if (dev->flags&IFF_POINTOPOINT) {@@ -2531,6 +2570,18 @@ static void addrconf_rs_timer(unsigned l * Announcement received after solicitation * was sent */ + + /* ISATAP (RFC4214) - schedule next RS/RA */ + if (ifp->idev->dev->priv_flags & IFF_ISATAP) { + struct ip_tunnel *t =netdev_priv(ifp->idev->dev);quoted
+ if (t->parms.i_key != INADDR_NONE) { + spin_lock(&ifp->lock); + ifp->probes = 0; + ifp->idev->if_flags &=‾(IF_RS_SENT|IF_RA_RCVD);quoted
+ addrconf_mod_timer(ifp, AC_DAD,t->parms.o_key*HZ); You are using a DAD timer to schedule RS?I am using the DAD timer to re-DAD the link local, which in turn schedules RS.Why? Seems to me that using the RS timer (AC_RS) gets you everything you want and nothing you don't. You set probes to 0, which marks DAD complete, thus you don't do DAD. You already have code in the addrconf_rs_timer() to properly send the RS. So, your patch to sending the RS is much shorter if you use the AC_RS timer. Am I missing something?
Probably not. "Re-DAD the link-local" just seemed to have a nice ring about it, but if we don't need it we can just as well go straight to the RS. I'll take a closer look to verify... Thanks - Fred fred.l.templin@boeing.com