devlink: save devlink_port_ops into a variable in devlink_port_function_validate()

Now when the original ops variable is removed, introduce it again
but this time for devlink_port_ops.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Jiri Pirko 2023-05-26 12:28:41 +02:00 committed by Jakub Kicinski
parent 216ba9f4ad
commit 4b5ed2b5a1
1 changed files with 5 additions and 5 deletions

View File

@ -1185,16 +1185,16 @@ static int devlink_port_function_validate(struct devlink_port *devlink_port,
struct nlattr **tb, struct nlattr **tb,
struct netlink_ext_ack *extack) struct netlink_ext_ack *extack)
{ {
const struct devlink_port_ops *ops = devlink_port->ops;
struct nlattr *attr; struct nlattr *attr;
if (tb[DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR] && if (tb[DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR] &&
!devlink_port->ops->port_fn_hw_addr_set) { !ops->port_fn_hw_addr_set) {
NL_SET_ERR_MSG_ATTR(extack, tb[DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR], NL_SET_ERR_MSG_ATTR(extack, tb[DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR],
"Port doesn't support function attributes"); "Port doesn't support function attributes");
return -EOPNOTSUPP; return -EOPNOTSUPP;
} }
if (tb[DEVLINK_PORT_FN_ATTR_STATE] && if (tb[DEVLINK_PORT_FN_ATTR_STATE] && !ops->port_fn_state_set) {
!devlink_port->ops->port_fn_state_set) {
NL_SET_ERR_MSG_ATTR(extack, tb[DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR], NL_SET_ERR_MSG_ATTR(extack, tb[DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR],
"Function does not support state setting"); "Function does not support state setting");
return -EOPNOTSUPP; return -EOPNOTSUPP;
@ -1205,13 +1205,13 @@ static int devlink_port_function_validate(struct devlink_port *devlink_port,
caps = nla_get_bitfield32(attr); caps = nla_get_bitfield32(attr);
if (caps.selector & DEVLINK_PORT_FN_CAP_ROCE && if (caps.selector & DEVLINK_PORT_FN_CAP_ROCE &&
!devlink_port->ops->port_fn_roce_set) { !ops->port_fn_roce_set) {
NL_SET_ERR_MSG_ATTR(extack, attr, NL_SET_ERR_MSG_ATTR(extack, attr,
"Port doesn't support RoCE function attribute"); "Port doesn't support RoCE function attribute");
return -EOPNOTSUPP; return -EOPNOTSUPP;
} }
if (caps.selector & DEVLINK_PORT_FN_CAP_MIGRATABLE) { if (caps.selector & DEVLINK_PORT_FN_CAP_MIGRATABLE) {
if (!devlink_port->ops->port_fn_migratable_set) { if (!ops->port_fn_migratable_set) {
NL_SET_ERR_MSG_ATTR(extack, attr, NL_SET_ERR_MSG_ATTR(extack, attr,
"Port doesn't support migratable function attribute"); "Port doesn't support migratable function attribute");
return -EOPNOTSUPP; return -EOPNOTSUPP;