Merge branch 'for-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu
[linux-2.6-microblaze.git] / net / tipc / udp_media.c
index 4d85d71..7fc02d8 100644 (file)
@@ -44,7 +44,7 @@
 #include <net/sock.h>
 #include <net/ip.h>
 #include <net/udp_tunnel.h>
-#include <net/addrconf.h>
+#include <net/ipv6_stubs.h>
 #include <linux/tipc_netlink.h>
 #include "core.h"
 #include "addr.h"
@@ -354,25 +354,21 @@ static int tipc_udp_recv(struct sock *sk, struct sk_buff *skb)
        skb_pull(skb, sizeof(struct udphdr));
        hdr = buf_msg(skb);
 
-       rcu_read_lock();
-       b = rcu_dereference_rtnl(ub->bearer);
+       b = rcu_dereference(ub->bearer);
        if (!b)
-               goto rcu_out;
+               goto out;
 
        if (b && test_bit(0, &b->up)) {
                tipc_rcv(sock_net(sk), skb, b);
-               rcu_read_unlock();
                return 0;
        }
 
        if (unlikely(msg_user(hdr) == LINK_CONFIG)) {
                err = tipc_udp_rcast_disc(b, skb);
                if (err)
-                       goto rcu_out;
+                       goto out;
        }
 
-rcu_out:
-       rcu_read_unlock();
 out:
        kfree_skb(skb);
        return 0;
@@ -451,9 +447,9 @@ int tipc_udp_nl_dump_remoteip(struct sk_buff *skb, struct netlink_callback *cb)
                if (!attrs[TIPC_NLA_BEARER])
                        return -EINVAL;
 
-               err = nla_parse_nested(battrs, TIPC_NLA_BEARER_MAX,
-                                      attrs[TIPC_NLA_BEARER],
-                                      tipc_nl_bearer_policy, NULL);
+               err = nla_parse_nested_deprecated(battrs, TIPC_NLA_BEARER_MAX,
+                                                 attrs[TIPC_NLA_BEARER],
+                                                 tipc_nl_bearer_policy, NULL);
                if (err)
                        return err;
 
@@ -527,7 +523,7 @@ int tipc_udp_nl_add_bearer_data(struct tipc_nl_msg *msg, struct tipc_bearer *b)
        if (!ub)
                return -ENODEV;
 
-       nest = nla_nest_start(msg->skb, TIPC_NLA_BEARER_UDP_OPTS);
+       nest = nla_nest_start_noflag(msg->skb, TIPC_NLA_BEARER_UDP_OPTS);
        if (!nest)
                goto msg_full;
 
@@ -605,8 +601,7 @@ int tipc_udp_nl_bearer_add(struct tipc_bearer *b, struct nlattr *attr)
        struct nlattr *opts[TIPC_NLA_UDP_MAX + 1];
        struct udp_media_addr *dst;
 
-       if (nla_parse_nested(opts, TIPC_NLA_UDP_MAX, attr,
-                            tipc_nl_udp_policy, NULL))
+       if (nla_parse_nested_deprecated(opts, TIPC_NLA_UDP_MAX, attr, tipc_nl_udp_policy, NULL))
                return -EINVAL;
 
        if (!opts[TIPC_NLA_UDP_REMOTE])
@@ -659,9 +654,7 @@ static int tipc_udp_enable(struct net *net, struct tipc_bearer *b,
        if (!attrs[TIPC_NLA_BEARER_UDP_OPTS])
                goto err;
 
-       if (nla_parse_nested(opts, TIPC_NLA_UDP_MAX,
-                            attrs[TIPC_NLA_BEARER_UDP_OPTS],
-                            tipc_nl_udp_policy, NULL))
+       if (nla_parse_nested_deprecated(opts, TIPC_NLA_UDP_MAX, attrs[TIPC_NLA_BEARER_UDP_OPTS], tipc_nl_udp_policy, NULL))
                goto err;
 
        if (!opts[TIPC_NLA_UDP_LOCAL] || !opts[TIPC_NLA_UDP_REMOTE]) {