aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/core/devlink.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/net/core/devlink.c b/net/core/devlink.c
index 7f88cc879d43..e9c1e6acfb6d 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -1410,12 +1410,14 @@ static int devlink_nl_eswitch_fill(struct sk_buff *msg, struct devlink *devlink,
1410 if (err) 1410 if (err)
1411 goto nla_put_failure; 1411 goto nla_put_failure;
1412 1412
1413 err = ops->eswitch_mode_get(devlink, &mode); 1413 if (ops->eswitch_mode_get) {
1414 if (err) 1414 err = ops->eswitch_mode_get(devlink, &mode);
1415 goto nla_put_failure; 1415 if (err)
1416 err = nla_put_u16(msg, DEVLINK_ATTR_ESWITCH_MODE, mode); 1416 goto nla_put_failure;
1417 if (err) 1417 err = nla_put_u16(msg, DEVLINK_ATTR_ESWITCH_MODE, mode);
1418 goto nla_put_failure; 1418 if (err)
1419 goto nla_put_failure;
1420 }
1419 1421
1420 if (ops->eswitch_inline_mode_get) { 1422 if (ops->eswitch_inline_mode_get) {
1421 err = ops->eswitch_inline_mode_get(devlink, &inline_mode); 1423 err = ops->eswitch_inline_mode_get(devlink, &inline_mode);
@@ -1443,7 +1445,7 @@ static int devlink_nl_cmd_eswitch_get_doit(struct sk_buff *skb,
1443 struct sk_buff *msg; 1445 struct sk_buff *msg;
1444 int err; 1446 int err;
1445 1447
1446 if (!ops || !ops->eswitch_mode_get) 1448 if (!ops)
1447 return -EOPNOTSUPP; 1449 return -EOPNOTSUPP;
1448 1450
1449 msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL); 1451 msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL);