What | Removed | Added |
---|---|---|
CC | richard.palethorpe@suse.com | |
Flags | needinfo?(richard.palethorpe@suse.com) |
Does this help? I don't understand why they think the CAN net device is UP at tty close and so ndo_stop will be always called to flush the tx work. IMO it is not called. --- a/drivers/net/can/slcan/slcan-core.c +++ b/drivers/net/can/slcan/slcan-core.c @@ -870,6 +870,8 @@ static void slcan_close(struct tty_struct *tty) */ unregister_candev(sl->dev); + flush_work(&sl->tx_work); + /* Mark channel as dead */ spin_lock_bh(&sl->lock); tty->disc_data = NULL;