| Submitter | Amerigo Wang |
|---|---|
| Date | Oct. 29, 2012, 8:16 a.m. |
| Message ID | <1351498585-20087-1-git-send-email-amwang@redhat.com> |
| Download | mbox | patch |
| Permalink | /patch/194874/ |
| State | Superseded |
| Delegated to: | David Miller |
| Headers | show |
Comments
On Mon, 2012-10-29 at 16:16 +0800, Cong Wang wrote: > When 'rt' is NULL, '&rt->dst' is NULL too because >dst > is always the first field of 'rt'. And dst_release accepts > NULL. > > Cc: Eric Dumazet <eric.dumazet@gmail.com> > Cc: David S. Miller <davem@davemloft.net> > Signed-off-by: Cong Wang <amwang@redhat.com> > > --- > diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c > index 8f0b12a..adeb479 100644 > --- a/net/ipv6/addrconf.c > +++ b/net/ipv6/addrconf.c > @@ -2027,8 +2027,7 @@ void addrconf_prefix_rcv(struct net_device *dev, u8 *opt, int len, bool sllao) > addrconf_prefix_route(&pinfo->prefix, pinfo->prefix_len, > dev, expires, flags); > } > - if (rt) > - dst_release(&rt->dst); > + dst_release(&rt->dst); > } > > /* Try to figure out our local address for this prefix */ Could you instead introduce a helper for that, like we have in IPv4. (ip_rt_put() -> ip6_rt_put() or something...) See my followup patch for ipv4 -- 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
On Mon, 2012-10-29 at 09:33 +0100, Eric Dumazet wrote: > On Mon, 2012-10-29 at 16:16 +0800, Cong Wang wrote: > > When 'rt' is NULL, '&rt->dst' is NULL too because >dst > > is always the first field of 'rt'. And dst_release accepts > > NULL. > > > > Cc: Eric Dumazet <eric.dumazet@gmail.com> > > Cc: David S. Miller <davem@davemloft.net> > > Signed-off-by: Cong Wang <amwang@redhat.com> > > > > --- > > diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c > > index 8f0b12a..adeb479 100644 > > --- a/net/ipv6/addrconf.c > > +++ b/net/ipv6/addrconf.c > > @@ -2027,8 +2027,7 @@ void addrconf_prefix_rcv(struct net_device *dev, u8 *opt, int len, bool sllao) > > addrconf_prefix_route(&pinfo->prefix, pinfo->prefix_len, > > dev, expires, flags); > > } > > - if (rt) > > - dst_release(&rt->dst); > > + dst_release(&rt->dst); > > } > > > > /* Try to figure out our local address for this prefix */ > > > > Could you instead introduce a helper for that, like we have in IPv4. Sure, that is better. -- 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
Patch
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 8f0b12a..adeb479 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -2027,8 +2027,7 @@ void addrconf_prefix_rcv(struct net_device *dev, u8 *opt, int len, bool sllao) addrconf_prefix_route(&pinfo->prefix, pinfo->prefix_len, dev, expires, flags); } - if (rt) - dst_release(&rt->dst); + dst_release(&rt->dst); } /* Try to figure out our local address for this prefix */
When 'rt' is NULL, '&rt->dst' is NULL too because >dst is always the first field of 'rt'. And dst_release accepts NULL. Cc: Eric Dumazet <eric.dumazet@gmail.com> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: Cong Wang <amwang@redhat.com> --- -- 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