diff --git a/[refs] b/[refs] index 967894f05570..d657bd5db1a6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 50269e19ad990e79eeda101fc6df80cffd5d4831 +refs/heads/master: 94f826b8076e2cb92242061e92f21b5baa3eccc2 diff --git a/trunk/net/ipv6/route.c b/trunk/net/ipv6/route.c index 24c456e8aa1d..496b62712fe8 100644 --- a/trunk/net/ipv6/route.c +++ b/trunk/net/ipv6/route.c @@ -2474,8 +2474,12 @@ static int rt6_fill_node(struct net *net, rcu_read_lock(); n = dst_get_neighbour_noref(&rt->dst); - if (n) - NLA_PUT(skb, RTA_GATEWAY, 16, &n->primary_key); + if (n) { + if (nla_put(skb, RTA_GATEWAY, 16, &n->primary_key) < 0) { + rcu_read_unlock(); + goto nla_put_failure; + } + } rcu_read_unlock(); if (rt->dst.dev)