diff options
author | Mike Marshall <hubcap@omnibond.com> | 2016-01-15 20:22:14 +0100 |
---|---|---|
committer | Mike Marshall <hubcap@omnibond.com> | 2016-01-15 20:22:14 +0100 |
commit | 5e1f3938f9e4ef539031d639879cb1cea870fab5 (patch) | |
tree | b262a7c002b05b7bc800a106d6ca6777dabe15bf /drivers/net/hamradio/mkiss.c | |
parent | Orangefs: add verification to decode_dirents (diff) | |
parent | Linux 4.4 (diff) | |
download | linux-5e1f3938f9e4ef539031d639879cb1cea870fab5.tar.xz linux-5e1f3938f9e4ef539031d639879cb1cea870fab5.zip |
Orangefs: merge with V4.4
Merge tag 'v4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into current
Linux 4.4
Diffstat (limited to 'drivers/net/hamradio/mkiss.c')
-rw-r--r-- | drivers/net/hamradio/mkiss.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/hamradio/mkiss.c b/drivers/net/hamradio/mkiss.c index 216bfd350169..85828f153445 100644 --- a/drivers/net/hamradio/mkiss.c +++ b/drivers/net/hamradio/mkiss.c @@ -797,14 +797,19 @@ static void mkiss_close(struct tty_struct *tty) */ if (!atomic_dec_and_test(&ax->refcnt)) down(&ax->dead_sem); - - unregister_netdev(ax->dev); + /* + * Halt the transmit queue so that a new transmit cannot scribble + * on our buffers + */ + netif_stop_queue(ax->dev); /* Free all AX25 frame buffers. */ kfree(ax->rbuff); kfree(ax->xbuff); ax->tty = NULL; + + unregister_netdev(ax->dev); } /* Perform I/O control on an active ax25 channel. */ |