diff options
-rw-r--r-- | net/core/devlink.c | 16 |
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); |