diff --git a/net/can/af_can.c b/net/can/af_can.c index 7bc86b176b4d..72831b4e0776 100644 --- a/net/can/af_can.c +++ b/net/can/af_can.c @@ -519,7 +519,7 @@ void can_rx_unregister(struct net *net, struct net_device *dev, canid_t can_id, struct can_rcv_lists_stats *rcv_lists_stats = net->can.rcv_lists_stats; struct can_dev_rcv_lists *dev_rcv_lists; - if (dev && dev->type != ARPHRD_CAN) + if (dev && (dev->type != ARPHRD_CAN || !can_get_ml_priv(dev))) return; if (dev && !net_eq(net, dev_net(dev)))