diff options
author | Jiri Slaby <jirislaby@gmail.com> | 2007-07-17 04:05:18 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-17 10:23:10 -0700 |
commit | e327325f4219e30476c775dbcd8651cd71b5416a (patch) | |
tree | 192b8424a5fa55f43f56a363c1cc5ef81b2d8392 | |
parent | 5b21f9dddd0817b761f1407f1950bee4f257411a (diff) | |
download | linux-stable-e327325f4219e30476c775dbcd8651cd71b5416a.tar.gz linux-stable-e327325f4219e30476c775dbcd8651cd71b5416a.tar.bz2 linux-stable-e327325f4219e30476c775dbcd8651cd71b5416a.zip |
Char: isicom, del_timer at exit
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | drivers/char/isicom.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/char/isicom.c b/drivers/char/isicom.c index b133b92a0ad5..2f8aaf8f8232 100644 --- a/drivers/char/isicom.c +++ b/drivers/char/isicom.c @@ -171,9 +171,6 @@ static struct pci_driver isicom_driver = { static int prev_card = 3; /* start servicing isi_card[0] */ static struct tty_driver *isicom_normal; -static DECLARE_COMPLETION(isi_timerdone); -static char re_schedule = 1; - static void isicom_tx(unsigned long _data); static void isicom_start(struct tty_struct *tty); @@ -502,11 +499,6 @@ unlock: spin_unlock_irqrestore(&isi_card[card].card_lock, flags); /* schedule another tx for hopefully in about 10ms */ sched_again: - if (!re_schedule) { - complete(&isi_timerdone); - return; - } - mod_timer(&tx, jiffies + msecs_to_jiffies(10)); } @@ -1890,9 +1882,7 @@ error: static void __exit isicom_exit(void) { - re_schedule = 0; - - wait_for_completion_timeout(&isi_timerdone, HZ); + del_timer_sync(&tx); pci_unregister_driver(&isicom_driver); tty_unregister_driver(isicom_normal); |