On Mon, 18 Jan 2021 19:39:54 +0200 Vadym Kochan wrote:
> From: Oleksandr Mazur <[email protected]>
>
> Fix incorrect user_ptr dereferencing when handling port param get/set:
>
> idx [0] stores the 'struct devlink' pointer;
> idx [1] stores the 'struct devlink_port' pointer;
>
> Fixes: f4601dee25d5 ("devlink: Add port param get command")
> Signed-off-by: Oleksandr Mazur <[email protected]>
> Signed-off-by: Vadym Kochan <[email protected]>
> ---
> 1) Fixed plvision.com -> plvision.eu
LGTM, but the fixes tag is wrong:
Fixes: 637989b5d77e ("devlink: Always use user_ptr[0] for devlink and simplify
post_doit")
right?
> diff --git a/net/core/devlink.c b/net/core/devlink.c
> index ee828e4b1007..738d4344d679 100644
> --- a/net/core/devlink.c
> +++ b/net/core/devlink.c
> @@ -4146,7 +4146,7 @@ static int devlink_nl_cmd_port_param_get_dumpit(struct
> sk_buff *msg,
> static int devlink_nl_cmd_port_param_get_doit(struct sk_buff *skb,
> struct genl_info *info)
> {
> - struct devlink_port *devlink_port = info->user_ptr[0];
> + struct devlink_port *devlink_port = info->user_ptr[1];
> struct devlink_param_item *param_item;
> struct sk_buff *msg;
> int err;
> @@ -4175,7 +4175,7 @@ static int devlink_nl_cmd_port_param_get_doit(struct
> sk_buff *skb,
> static int devlink_nl_cmd_port_param_set_doit(struct sk_buff *skb,
> struct genl_info *info)
> {
> - struct devlink_port *devlink_port = info->user_ptr[0];
> + struct devlink_port *devlink_port = info->user_ptr[1];
>
> return __devlink_nl_cmd_param_set_doit(devlink_port->devlink,
> devlink_port->index,