Commit 760102cd authored by Oliver Hartkopp's avatar Oliver Hartkopp Committed by Sasha Levin

can: fix oops caused by wrong rtnl dellink usage

[ Upstream commit 25e1ed6e ]

For 'real' hardware CAN devices the netlink interface is used to set CAN
specific communication parameters. Real CAN hardware can not be created nor
removed with the ip tool ...

This patch adds a private dellink function for the CAN device driver interface
that does just nothing.

It's a follow up to commit 993e6f2f ("can: fix oops caused by wrong rtnl
newlink usage") but for dellink.
Reported-by: default avatarajneu <ajneu1@gmail.com>
Signed-off-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
parent 488ba7c5
...@@ -1011,6 +1011,11 @@ static int can_newlink(struct net *src_net, struct net_device *dev, ...@@ -1011,6 +1011,11 @@ static int can_newlink(struct net *src_net, struct net_device *dev,
return -EOPNOTSUPP; return -EOPNOTSUPP;
} }
static void can_dellink(struct net_device *dev, struct list_head *head)
{
return;
}
static struct rtnl_link_ops can_link_ops __read_mostly = { static struct rtnl_link_ops can_link_ops __read_mostly = {
.kind = "can", .kind = "can",
.maxtype = IFLA_CAN_MAX, .maxtype = IFLA_CAN_MAX,
...@@ -1019,6 +1024,7 @@ static struct rtnl_link_ops can_link_ops __read_mostly = { ...@@ -1019,6 +1024,7 @@ static struct rtnl_link_ops can_link_ops __read_mostly = {
.validate = can_validate, .validate = can_validate,
.newlink = can_newlink, .newlink = can_newlink,
.changelink = can_changelink, .changelink = can_changelink,
.dellink = can_dellink,
.get_size = can_get_size, .get_size = can_get_size,
.fill_info = can_fill_info, .fill_info = can_fill_info,
.get_xstats_size = can_get_xstats_size, .get_xstats_size = can_get_xstats_size,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment