]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/dcb/dcbnl.c
Merge branch 'generic' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
[karo-tx-linux.git] / net / dcb / dcbnl.c
index 3202d75329b504b6442441becc31157e0c2be7a5..93106120f98770699d28e8b82701b132144baa87 100644 (file)
@@ -245,8 +245,7 @@ static int dcbnl_getpfccfg(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EOPNOTSUPP;
 
        ret = nla_parse_nested(data, DCB_PFC_UP_ATTR_MAX,
-                              tb[DCB_ATTR_PFC_CFG],
-                              dcbnl_pfc_up_nest);
+                              tb[DCB_ATTR_PFC_CFG], dcbnl_pfc_up_nest, NULL);
        if (ret)
                return ret;
 
@@ -304,7 +303,7 @@ static int dcbnl_getcap(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EOPNOTSUPP;
 
        ret = nla_parse_nested(data, DCB_CAP_ATTR_MAX, tb[DCB_ATTR_CAP],
-                              dcbnl_cap_nest);
+                              dcbnl_cap_nest, NULL);
        if (ret)
                return ret;
 
@@ -348,7 +347,7 @@ static int dcbnl_getnumtcs(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EOPNOTSUPP;
 
        ret = nla_parse_nested(data, DCB_NUMTCS_ATTR_MAX, tb[DCB_ATTR_NUMTCS],
-                              dcbnl_numtcs_nest);
+                              dcbnl_numtcs_nest, NULL);
        if (ret)
                return ret;
 
@@ -393,7 +392,7 @@ static int dcbnl_setnumtcs(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EOPNOTSUPP;
 
        ret = nla_parse_nested(data, DCB_NUMTCS_ATTR_MAX, tb[DCB_ATTR_NUMTCS],
-                              dcbnl_numtcs_nest);
+                              dcbnl_numtcs_nest, NULL);
        if (ret)
                return ret;
 
@@ -452,7 +451,7 @@ static int dcbnl_getapp(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EINVAL;
 
        ret = nla_parse_nested(app_tb, DCB_APP_ATTR_MAX, tb[DCB_ATTR_APP],
-                              dcbnl_app_nest);
+                              dcbnl_app_nest, NULL);
        if (ret)
                return ret;
 
@@ -520,7 +519,7 @@ static int dcbnl_setapp(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EINVAL;
 
        ret = nla_parse_nested(app_tb, DCB_APP_ATTR_MAX, tb[DCB_ATTR_APP],
-                              dcbnl_app_nest);
+                              dcbnl_app_nest, NULL);
        if (ret)
                return ret;
 
@@ -577,8 +576,8 @@ static int __dcbnl_pg_getcfg(struct net_device *netdev, struct nlmsghdr *nlh,
            !netdev->dcbnl_ops->getpgbwgcfgrx)
                return -EOPNOTSUPP;
 
-       ret = nla_parse_nested(pg_tb, DCB_PG_ATTR_MAX,
-                              tb[DCB_ATTR_PG_CFG], dcbnl_pg_nest);
+       ret = nla_parse_nested(pg_tb, DCB_PG_ATTR_MAX, tb[DCB_ATTR_PG_CFG],
+                              dcbnl_pg_nest, NULL);
        if (ret)
                return ret;
 
@@ -597,8 +596,8 @@ static int __dcbnl_pg_getcfg(struct net_device *netdev, struct nlmsghdr *nlh,
                        data = pg_tb[DCB_PG_ATTR_TC_ALL];
                else
                        data = pg_tb[i];
-               ret = nla_parse_nested(param_tb, DCB_TC_ATTR_PARAM_MAX,
-                                      data, dcbnl_tc_param_nest);
+               ret = nla_parse_nested(param_tb, DCB_TC_ATTR_PARAM_MAX, data,
+                                      dcbnl_tc_param_nest, NULL);
                if (ret)
                        goto err_pg;
 
@@ -735,8 +734,7 @@ static int dcbnl_setpfccfg(struct net_device *netdev, struct nlmsghdr *nlh,
                return -EOPNOTSUPP;
 
        ret = nla_parse_nested(data, DCB_PFC_UP_ATTR_MAX,
-                              tb[DCB_ATTR_PFC_CFG],
-                              dcbnl_pfc_up_nest);
+                              tb[DCB_ATTR_PFC_CFG], dcbnl_pfc_up_nest, NULL);
        if (ret)
                return ret;
 
@@ -791,8 +789,8 @@ static int __dcbnl_pg_setcfg(struct net_device *netdev, struct nlmsghdr *nlh,
            !netdev->dcbnl_ops->setpgbwgcfgrx)
                return -EOPNOTSUPP;
 
-       ret = nla_parse_nested(pg_tb, DCB_PG_ATTR_MAX,
-                              tb[DCB_ATTR_PG_CFG], dcbnl_pg_nest);
+       ret = nla_parse_nested(pg_tb, DCB_PG_ATTR_MAX, tb[DCB_ATTR_PG_CFG],
+                              dcbnl_pg_nest, NULL);
        if (ret)
                return ret;
 
@@ -801,7 +799,7 @@ static int __dcbnl_pg_setcfg(struct net_device *netdev, struct nlmsghdr *nlh,
                        continue;
 
                ret = nla_parse_nested(param_tb, DCB_TC_ATTR_PARAM_MAX,
-                                      pg_tb[i], dcbnl_tc_param_nest);
+                                      pg_tb[i], dcbnl_tc_param_nest, NULL);
                if (ret)
                        return ret;
 
@@ -889,8 +887,8 @@ static int dcbnl_bcn_getcfg(struct net_device *netdev, struct nlmsghdr *nlh,
            !netdev->dcbnl_ops->getbcncfg)
                return -EOPNOTSUPP;
 
-       ret = nla_parse_nested(bcn_tb, DCB_BCN_ATTR_MAX,
-                              tb[DCB_ATTR_BCN], dcbnl_bcn_nest);
+       ret = nla_parse_nested(bcn_tb, DCB_BCN_ATTR_MAX, tb[DCB_ATTR_BCN],
+                              dcbnl_bcn_nest, NULL);
        if (ret)
                return ret;
 
@@ -948,9 +946,8 @@ static int dcbnl_bcn_setcfg(struct net_device *netdev, struct nlmsghdr *nlh,
            !netdev->dcbnl_ops->setbcnrp)
                return -EOPNOTSUPP;
 
-       ret = nla_parse_nested(data, DCB_BCN_ATTR_MAX,
-                              tb[DCB_ATTR_BCN],
-                              dcbnl_pfc_up_nest);
+       ret = nla_parse_nested(data, DCB_BCN_ATTR_MAX, tb[DCB_ATTR_BCN],
+                              dcbnl_pfc_up_nest, NULL);
        if (ret)
                return ret;
 
@@ -1424,8 +1421,8 @@ static int dcbnl_ieee_set(struct net_device *netdev, struct nlmsghdr *nlh,
        if (!tb[DCB_ATTR_IEEE])
                return -EINVAL;
 
-       err = nla_parse_nested(ieee, DCB_ATTR_IEEE_MAX,
-                              tb[DCB_ATTR_IEEE], dcbnl_ieee_policy);
+       err = nla_parse_nested(ieee, DCB_ATTR_IEEE_MAX, tb[DCB_ATTR_IEEE],
+                              dcbnl_ieee_policy, NULL);
        if (err)
                return err;
 
@@ -1508,8 +1505,8 @@ static int dcbnl_ieee_del(struct net_device *netdev, struct nlmsghdr *nlh,
        if (!tb[DCB_ATTR_IEEE])
                return -EINVAL;
 
-       err = nla_parse_nested(ieee, DCB_ATTR_IEEE_MAX,
-                              tb[DCB_ATTR_IEEE], dcbnl_ieee_policy);
+       err = nla_parse_nested(ieee, DCB_ATTR_IEEE_MAX, tb[DCB_ATTR_IEEE],
+                              dcbnl_ieee_policy, NULL);
        if (err)
                return err;
 
@@ -1581,8 +1578,8 @@ static int dcbnl_getfeatcfg(struct net_device *netdev, struct nlmsghdr *nlh,
        if (!tb[DCB_ATTR_FEATCFG])
                return -EINVAL;
 
-       ret = nla_parse_nested(data, DCB_FEATCFG_ATTR_MAX, tb[DCB_ATTR_FEATCFG],
-                              dcbnl_featcfg_nest);
+       ret = nla_parse_nested(data, DCB_FEATCFG_ATTR_MAX,
+                              tb[DCB_ATTR_FEATCFG], dcbnl_featcfg_nest, NULL);
        if (ret)
                return ret;
 
@@ -1625,8 +1622,8 @@ static int dcbnl_setfeatcfg(struct net_device *netdev, struct nlmsghdr *nlh,
        if (!tb[DCB_ATTR_FEATCFG])
                return -EINVAL;
 
-       ret = nla_parse_nested(data, DCB_FEATCFG_ATTR_MAX, tb[DCB_ATTR_FEATCFG],
-                              dcbnl_featcfg_nest);
+       ret = nla_parse_nested(data, DCB_FEATCFG_ATTR_MAX,
+                              tb[DCB_ATTR_FEATCFG], dcbnl_featcfg_nest, NULL);
 
        if (ret)
                goto err;
@@ -1699,7 +1696,8 @@ static const struct reply_func reply_funcs[DCB_CMD_MAX+1] = {
        [DCB_CMD_CEE_GET]       = { RTM_GETDCB, dcbnl_cee_get },
 };
 
-static int dcb_doit(struct sk_buff *skb, struct nlmsghdr *nlh)
+static int dcb_doit(struct sk_buff *skb, struct nlmsghdr *nlh,
+                   struct netlink_ext_ack *extack)
 {
        struct net *net = sock_net(skb->sk);
        struct net_device *netdev;
@@ -1715,7 +1713,7 @@ static int dcb_doit(struct sk_buff *skb, struct nlmsghdr *nlh)
                return -EPERM;
 
        ret = nlmsg_parse(nlh, sizeof(*dcb), tb, DCB_ATTR_MAX,
-                         dcbnl_rtnl_policy);
+                         dcbnl_rtnl_policy, extack);
        if (ret < 0)
                return ret;