summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--module/elmcan.c4
-rw-r--r--readme.rst3
2 files changed, 3 insertions, 4 deletions
diff --git a/module/elmcan.c b/module/elmcan.c
index 2fd861d..33b0add 100644
--- a/module/elmcan.c
+++ b/module/elmcan.c
@@ -1215,14 +1215,14 @@ static void elmcan_ldisc_close(struct tty_struct *tty)
/* At this point, all ldisc calls to us have become no-ops. */
+ flush_work(&elm->tx_work);
+
/* Mark channel as dead */
spin_lock_bh(&elm->lock);
tty->disc_data = NULL;
elm->tty = NULL;
spin_unlock_bh(&elm->lock);
- flush_work(&elm->tx_work);
-
netdev_info(elm->dev, "elmcan off %s.\n", tty->name);
kfree(elm->txbuf);
diff --git a/readme.rst b/readme.rst
index a283e0a..bfaf89b 100644
--- a/readme.rst
+++ b/readme.rst
@@ -341,5 +341,4 @@ termination resistors on its PCB and try removing them.
To Do list for future development
----------------------------------
-- flushing of ``tx_work`` is too late in ``ldisc_close()``
- (is this still the case?)
+- None currently