diff options
author | Jiri Slaby <jirislaby@gmail.com> | 2007-02-10 04:44:55 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-11 13:51:26 -0500 |
commit | b963a8441cb95999c97bea379607071a869c65f0 (patch) | |
tree | 111fa0624be52ba830902fac3777febf340cf5e8 /drivers/char | |
parent | 1ed0c0b7306d7c93e83ebe30087a12684b280cdc (diff) |
[PATCH] Char: tty_wakeup cleanup
tty_wakeup cleanup
- remove wake_up_interruptible(&tty->write_wait) surrounding
tty_wakup(tty);
- substitute tty->ldisc.write_wakeup(tty) + wake_up() by tty_wakeup(tty);
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Acked-by: Tilman Schmidt <tilman@imap.cc>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/char')
-rw-r--r-- | drivers/char/amiserial.c | 5 | ||||
-rw-r--r-- | drivers/char/cyclades.c | 1 | ||||
-rw-r--r-- | drivers/char/epca.c | 3 | ||||
-rw-r--r-- | drivers/char/generic_serial.c | 1 | ||||
-rw-r--r-- | drivers/char/ip2/i2lib.c | 10 | ||||
-rw-r--r-- | drivers/char/isicom.c | 1 | ||||
-rw-r--r-- | drivers/char/istallion.c | 1 | ||||
-rw-r--r-- | drivers/char/mxser.c | 4 | ||||
-rw-r--r-- | drivers/char/pcmcia/synclink_cs.c | 4 | ||||
-rw-r--r-- | drivers/char/rio/riointr.c | 9 | ||||
-rw-r--r-- | drivers/char/riscom8.c | 5 | ||||
-rw-r--r-- | drivers/char/rocket.c | 3 | ||||
-rw-r--r-- | drivers/char/specialix.c | 4 | ||||
-rw-r--r-- | drivers/char/synclink.c | 5 | ||||
-rw-r--r-- | drivers/char/synclink_gt.c | 5 | ||||
-rw-r--r-- | drivers/char/synclinkmp.c | 5 |
16 files changed, 11 insertions, 55 deletions
diff --git a/drivers/char/amiserial.c b/drivers/char/amiserial.c index feb4ac802a0d..39880eb58f35 100644 --- a/drivers/char/amiserial.c +++ b/drivers/char/amiserial.c | |||
@@ -527,10 +527,8 @@ static void do_softint(unsigned long private_) | |||
527 | if (!tty) | 527 | if (!tty) |
528 | return; | 528 | return; |
529 | 529 | ||
530 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) { | 530 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) |
531 | tty_wakeup(tty); | 531 | tty_wakeup(tty); |
532 | wake_up_interruptible(&tty->write_wait); | ||
533 | } | ||
534 | } | 532 | } |
535 | 533 | ||
536 | /* | 534 | /* |
@@ -968,7 +966,6 @@ static void rs_flush_buffer(struct tty_struct *tty) | |||
968 | local_irq_save(flags); | 966 | local_irq_save(flags); |
969 | info->xmit.head = info->xmit.tail = 0; | 967 | info->xmit.head = info->xmit.tail = 0; |
970 | local_irq_restore(flags); | 968 | local_irq_restore(flags); |
971 | wake_up_interruptible(&tty->write_wait); | ||
972 | tty_wakeup(tty); | 969 | tty_wakeup(tty); |
973 | } | 970 | } |
974 | 971 | ||
diff --git a/drivers/char/cyclades.c b/drivers/char/cyclades.c index 3ffa0807754c..363beb165729 100644 --- a/drivers/char/cyclades.c +++ b/drivers/char/cyclades.c | |||
@@ -4488,7 +4488,6 @@ static void cy_flush_buffer(struct tty_struct *tty) | |||
4488 | CY_UNLOCK(info, flags); | 4488 | CY_UNLOCK(info, flags); |
4489 | } | 4489 | } |
4490 | tty_wakeup(tty); | 4490 | tty_wakeup(tty); |
4491 | wake_up_interruptible(&tty->write_wait); | ||
4492 | } /* cy_flush_buffer */ | 4491 | } /* cy_flush_buffer */ |
4493 | 4492 | ||
4494 | /* | 4493 | /* |
diff --git a/drivers/char/epca.c b/drivers/char/epca.c index a0f822c9d74d..88fc24fc4392 100644 --- a/drivers/char/epca.c +++ b/drivers/char/epca.c | |||
@@ -844,7 +844,6 @@ static void pc_flush_buffer(struct tty_struct *tty) | |||
844 | fepcmd(ch, STOUT, (unsigned) tail, 0, 0, 0); | 844 | fepcmd(ch, STOUT, (unsigned) tail, 0, 0, 0); |
845 | memoff(ch); | 845 | memoff(ch); |
846 | spin_unlock_irqrestore(&epca_lock, flags); | 846 | spin_unlock_irqrestore(&epca_lock, flags); |
847 | wake_up_interruptible(&tty->write_wait); | ||
848 | tty_wakeup(tty); | 847 | tty_wakeup(tty); |
849 | } /* End pc_flush_buffer */ | 848 | } /* End pc_flush_buffer */ |
850 | 849 | ||
@@ -1795,7 +1794,6 @@ static void doevent(int crd) | |||
1795 | { /* Begin if LOWWAIT */ | 1794 | { /* Begin if LOWWAIT */ |
1796 | ch->statusflags &= ~LOWWAIT; | 1795 | ch->statusflags &= ~LOWWAIT; |
1797 | tty_wakeup(tty); | 1796 | tty_wakeup(tty); |
1798 | wake_up_interruptible(&tty->write_wait); | ||
1799 | } /* End if LOWWAIT */ | 1797 | } /* End if LOWWAIT */ |
1800 | } else if (event & EMPTYTX_IND) { /* Begin EMPTYTX_IND */ | 1798 | } else if (event & EMPTYTX_IND) { /* Begin EMPTYTX_IND */ |
1801 | /* This event is generated by setup_empty_event */ | 1799 | /* This event is generated by setup_empty_event */ |
@@ -1803,7 +1801,6 @@ static void doevent(int crd) | |||
1803 | if (ch->statusflags & EMPTYWAIT) { /* Begin if EMPTYWAIT */ | 1801 | if (ch->statusflags & EMPTYWAIT) { /* Begin if EMPTYWAIT */ |
1804 | ch->statusflags &= ~EMPTYWAIT; | 1802 | ch->statusflags &= ~EMPTYWAIT; |
1805 | tty_wakeup(tty); | 1803 | tty_wakeup(tty); |
1806 | wake_up_interruptible(&tty->write_wait); | ||
1807 | } /* End if EMPTYWAIT */ | 1804 | } /* End if EMPTYWAIT */ |
1808 | } /* End EMPTYTX_IND */ | 1805 | } /* End EMPTYTX_IND */ |
1809 | } /* End if valid tty */ | 1806 | } /* End if valid tty */ |
diff --git a/drivers/char/generic_serial.c b/drivers/char/generic_serial.c index e769811e7417..337bbcdcf13d 100644 --- a/drivers/char/generic_serial.c +++ b/drivers/char/generic_serial.c | |||
@@ -382,7 +382,6 @@ void gs_flush_buffer(struct tty_struct *tty) | |||
382 | port->xmit_cnt = port->xmit_head = port->xmit_tail = 0; | 382 | port->xmit_cnt = port->xmit_head = port->xmit_tail = 0; |
383 | spin_unlock_irqrestore (&port->driver_lock, flags); | 383 | spin_unlock_irqrestore (&port->driver_lock, flags); |
384 | 384 | ||
385 | wake_up_interruptible(&tty->write_wait); | ||
386 | tty_wakeup(tty); | 385 | tty_wakeup(tty); |
387 | func_exit (); | 386 | func_exit (); |
388 | } | 387 | } |
diff --git a/drivers/char/ip2/i2lib.c b/drivers/char/ip2/i2lib.c index 78045767ec33..88b9d338da53 100644 --- a/drivers/char/ip2/i2lib.c +++ b/drivers/char/ip2/i2lib.c | |||
@@ -1373,15 +1373,7 @@ ip2_owake( PTTY tp) | |||
1373 | ip2trace (CHANN, ITRC_SICMD, 10, 2, tp->flags, | 1373 | ip2trace (CHANN, ITRC_SICMD, 10, 2, tp->flags, |
1374 | (1 << TTY_DO_WRITE_WAKEUP) ); | 1374 | (1 << TTY_DO_WRITE_WAKEUP) ); |
1375 | 1375 | ||
1376 | wake_up_interruptible ( &tp->write_wait ); | 1376 | tty_wakeup(tp); |
1377 | if ( ( tp->flags & (1 << TTY_DO_WRITE_WAKEUP) ) | ||
1378 | && tp->ldisc.write_wakeup ) | ||
1379 | { | ||
1380 | (tp->ldisc.write_wakeup) ( tp ); | ||
1381 | |||
1382 | ip2trace (CHANN, ITRC_SICMD, 11, 0 ); | ||
1383 | |||
1384 | } | ||
1385 | } | 1377 | } |
1386 | 1378 | ||
1387 | static inline void | 1379 | static inline void |
diff --git a/drivers/char/isicom.c b/drivers/char/isicom.c index 9feb76210534..43ab9edc76f5 100644 --- a/drivers/char/isicom.c +++ b/drivers/char/isicom.c | |||
@@ -1487,7 +1487,6 @@ static void isicom_flush_buffer(struct tty_struct *tty) | |||
1487 | port->xmit_cnt = port->xmit_head = port->xmit_tail = 0; | 1487 | port->xmit_cnt = port->xmit_head = port->xmit_tail = 0; |
1488 | spin_unlock_irqrestore(&card->card_lock, flags); | 1488 | spin_unlock_irqrestore(&card->card_lock, flags); |
1489 | 1489 | ||
1490 | wake_up_interruptible(&tty->write_wait); | ||
1491 | tty_wakeup(tty); | 1490 | tty_wakeup(tty); |
1492 | } | 1491 | } |
1493 | 1492 | ||
diff --git a/drivers/char/istallion.c b/drivers/char/istallion.c index 68645d351873..7b279d1de4a2 100644 --- a/drivers/char/istallion.c +++ b/drivers/char/istallion.c | |||
@@ -2424,7 +2424,6 @@ static int stli_hostcmd(struct stlibrd *brdp, struct stliport *portp) | |||
2424 | if (tty != NULL) { | 2424 | if (tty != NULL) { |
2425 | tty_wakeup(tty); | 2425 | tty_wakeup(tty); |
2426 | EBRDENABLE(brdp); | 2426 | EBRDENABLE(brdp); |
2427 | wake_up_interruptible(&tty->write_wait); | ||
2428 | } | 2427 | } |
2429 | } | 2428 | } |
2430 | 2429 | ||
diff --git a/drivers/char/mxser.c b/drivers/char/mxser.c index 83f604b19290..df1e608b7ae6 100644 --- a/drivers/char/mxser.c +++ b/drivers/char/mxser.c | |||
@@ -1254,9 +1254,7 @@ static void mxser_flush_buffer(struct tty_struct *tty) | |||
1254 | spin_unlock_irqrestore(&info->slock, flags); | 1254 | spin_unlock_irqrestore(&info->slock, flags); |
1255 | /* above added by shinhay */ | 1255 | /* above added by shinhay */ |
1256 | 1256 | ||
1257 | wake_up_interruptible(&tty->write_wait); | 1257 | tty_wakeup(tty); |
1258 | if ((tty->flags & (1 << TTY_DO_WRITE_WAKEUP)) && tty->ldisc.write_wakeup) | ||
1259 | (tty->ldisc.write_wakeup) (tty); | ||
1260 | } | 1258 | } |
1261 | 1259 | ||
1262 | static int mxser_ioctl(struct tty_struct *tty, struct file *file, unsigned int cmd, unsigned long arg) | 1260 | static int mxser_ioctl(struct tty_struct *tty, struct file *file, unsigned int cmd, unsigned long arg) |
diff --git a/drivers/char/pcmcia/synclink_cs.c b/drivers/char/pcmcia/synclink_cs.c index f108c136800a..4ab2c98f978c 100644 --- a/drivers/char/pcmcia/synclink_cs.c +++ b/drivers/char/pcmcia/synclink_cs.c | |||
@@ -887,10 +887,8 @@ static void bh_transmit(MGSLPC_INFO *info) | |||
887 | if (debug_level >= DEBUG_LEVEL_BH) | 887 | if (debug_level >= DEBUG_LEVEL_BH) |
888 | printk("bh_transmit() entry on %s\n", info->device_name); | 888 | printk("bh_transmit() entry on %s\n", info->device_name); |
889 | 889 | ||
890 | if (tty) { | 890 | if (tty) |
891 | tty_wakeup(tty); | 891 | tty_wakeup(tty); |
892 | wake_up_interruptible(&tty->write_wait); | ||
893 | } | ||
894 | } | 892 | } |
895 | 893 | ||
896 | static void bh_status(MGSLPC_INFO *info) | 894 | static void bh_status(MGSLPC_INFO *info) |
diff --git a/drivers/char/rio/riointr.c b/drivers/char/rio/riointr.c index eeda40c5e189..ebc76342712c 100644 --- a/drivers/char/rio/riointr.c +++ b/drivers/char/rio/riointr.c | |||
@@ -162,13 +162,8 @@ void RIOTxEnable(char *en) | |||
162 | 162 | ||
163 | rio_spin_unlock_irqrestore(&PortP->portSem, flags); | 163 | rio_spin_unlock_irqrestore(&PortP->portSem, flags); |
164 | 164 | ||
165 | if (PortP->gs.xmit_cnt <= (PortP->gs.wakeup_chars + 2 * PKT_MAX_DATA_LEN)) { | 165 | if (PortP->gs.xmit_cnt <= (PortP->gs.wakeup_chars + 2 * PKT_MAX_DATA_LEN)) |
166 | rio_dprintk(RIO_DEBUG_INTR, "Waking up.... ldisc:%d (%d/%d)....", (int) (PortP->gs.tty->flags & (1 << TTY_DO_WRITE_WAKEUP)), PortP->gs.wakeup_chars, PortP->gs.xmit_cnt); | 166 | tty_wakeup(PortP->gs.tty); |
167 | if ((PortP->gs.tty->flags & (1 << TTY_DO_WRITE_WAKEUP)) && PortP->gs.tty->ldisc.write_wakeup) | ||
168 | (PortP->gs.tty->ldisc.write_wakeup) (PortP->gs.tty); | ||
169 | rio_dprintk(RIO_DEBUG_INTR, "(%d/%d)\n", PortP->gs.wakeup_chars, PortP->gs.xmit_cnt); | ||
170 | wake_up_interruptible(&PortP->gs.tty->write_wait); | ||
171 | } | ||
172 | 167 | ||
173 | } | 168 | } |
174 | 169 | ||
diff --git a/drivers/char/riscom8.c b/drivers/char/riscom8.c index e2a94bfb2a43..70145254fb9d 100644 --- a/drivers/char/riscom8.c +++ b/drivers/char/riscom8.c | |||
@@ -1229,7 +1229,6 @@ static void rc_flush_buffer(struct tty_struct *tty) | |||
1229 | port->xmit_cnt = port->xmit_head = port->xmit_tail = 0; | 1229 | port->xmit_cnt = port->xmit_head = port->xmit_tail = 0; |
1230 | restore_flags(flags); | 1230 | restore_flags(flags); |
1231 | 1231 | ||
1232 | wake_up_interruptible(&tty->write_wait); | ||
1233 | tty_wakeup(tty); | 1232 | tty_wakeup(tty); |
1234 | } | 1233 | } |
1235 | 1234 | ||
@@ -1570,10 +1569,8 @@ static void do_softint(struct work_struct *ugly_api) | |||
1570 | if(!(tty = port->tty)) | 1569 | if(!(tty = port->tty)) |
1571 | return; | 1570 | return; |
1572 | 1571 | ||
1573 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &port->event)) { | 1572 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &port->event)) |
1574 | tty_wakeup(tty); | 1573 | tty_wakeup(tty); |
1575 | wake_up_interruptible(&tty->write_wait); | ||
1576 | } | ||
1577 | } | 1574 | } |
1578 | 1575 | ||
1579 | static const struct tty_operations riscom_ops = { | 1576 | static const struct tty_operations riscom_ops = { |
diff --git a/drivers/char/rocket.c b/drivers/char/rocket.c index e94a62e30fc4..106f225e745f 100644 --- a/drivers/char/rocket.c +++ b/drivers/char/rocket.c | |||
@@ -474,7 +474,6 @@ static void rp_do_transmit(struct r_port *info) | |||
474 | 474 | ||
475 | if (info->xmit_cnt < WAKEUP_CHARS) { | 475 | if (info->xmit_cnt < WAKEUP_CHARS) { |
476 | tty_wakeup(tty); | 476 | tty_wakeup(tty); |
477 | wake_up_interruptible(&tty->write_wait); | ||
478 | #ifdef ROCKETPORT_HAVE_POLL_WAIT | 477 | #ifdef ROCKETPORT_HAVE_POLL_WAIT |
479 | wake_up_interruptible(&tty->poll_wait); | 478 | wake_up_interruptible(&tty->poll_wait); |
480 | #endif | 479 | #endif |
@@ -1772,7 +1771,6 @@ static int rp_write(struct tty_struct *tty, | |||
1772 | end: | 1771 | end: |
1773 | if (info->xmit_cnt < WAKEUP_CHARS) { | 1772 | if (info->xmit_cnt < WAKEUP_CHARS) { |
1774 | tty_wakeup(tty); | 1773 | tty_wakeup(tty); |
1775 | wake_up_interruptible(&tty->write_wait); | ||
1776 | #ifdef ROCKETPORT_HAVE_POLL_WAIT | 1774 | #ifdef ROCKETPORT_HAVE_POLL_WAIT |
1777 | wake_up_interruptible(&tty->poll_wait); | 1775 | wake_up_interruptible(&tty->poll_wait); |
1778 | #endif | 1776 | #endif |
@@ -1841,7 +1839,6 @@ static void rp_flush_buffer(struct tty_struct *tty) | |||
1841 | info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; | 1839 | info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; |
1842 | spin_unlock_irqrestore(&info->slock, flags); | 1840 | spin_unlock_irqrestore(&info->slock, flags); |
1843 | 1841 | ||
1844 | wake_up_interruptible(&tty->write_wait); | ||
1845 | #ifdef ROCKETPORT_HAVE_POLL_WAIT | 1842 | #ifdef ROCKETPORT_HAVE_POLL_WAIT |
1846 | wake_up_interruptible(&tty->poll_wait); | 1843 | wake_up_interruptible(&tty->poll_wait); |
1847 | #endif | 1844 | #endif |
diff --git a/drivers/char/specialix.c b/drivers/char/specialix.c index 20946f5127e0..92043c8f2355 100644 --- a/drivers/char/specialix.c +++ b/drivers/char/specialix.c | |||
@@ -2350,10 +2350,8 @@ static void do_softint(struct work_struct *work) | |||
2350 | return; | 2350 | return; |
2351 | } | 2351 | } |
2352 | 2352 | ||
2353 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &port->event)) { | 2353 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &port->event)) |
2354 | tty_wakeup(tty); | 2354 | tty_wakeup(tty); |
2355 | //wake_up_interruptible(&tty->write_wait); | ||
2356 | } | ||
2357 | 2355 | ||
2358 | func_exit(); | 2356 | func_exit(); |
2359 | } | 2357 | } |
diff --git a/drivers/char/synclink.c b/drivers/char/synclink.c index 3fa625db9e4b..bf76db1342c5 100644 --- a/drivers/char/synclink.c +++ b/drivers/char/synclink.c | |||
@@ -1148,10 +1148,8 @@ static void mgsl_bh_transmit(struct mgsl_struct *info) | |||
1148 | printk( "%s(%d):mgsl_bh_transmit() entry on %s\n", | 1148 | printk( "%s(%d):mgsl_bh_transmit() entry on %s\n", |
1149 | __FILE__,__LINE__,info->device_name); | 1149 | __FILE__,__LINE__,info->device_name); |
1150 | 1150 | ||
1151 | if (tty) { | 1151 | if (tty) |
1152 | tty_wakeup(tty); | 1152 | tty_wakeup(tty); |
1153 | wake_up_interruptible(&tty->write_wait); | ||
1154 | } | ||
1155 | 1153 | ||
1156 | /* if transmitter idle and loopmode_send_done_requested | 1154 | /* if transmitter idle and loopmode_send_done_requested |
1157 | * then start echoing RxD to TxD | 1155 | * then start echoing RxD to TxD |
@@ -2340,7 +2338,6 @@ static void mgsl_flush_buffer(struct tty_struct *tty) | |||
2340 | del_timer(&info->tx_timer); | 2338 | del_timer(&info->tx_timer); |
2341 | spin_unlock_irqrestore(&info->irq_spinlock,flags); | 2339 | spin_unlock_irqrestore(&info->irq_spinlock,flags); |
2342 | 2340 | ||
2343 | wake_up_interruptible(&tty->write_wait); | ||
2344 | tty_wakeup(tty); | 2341 | tty_wakeup(tty); |
2345 | } | 2342 | } |
2346 | 2343 | ||
diff --git a/drivers/char/synclink_gt.c b/drivers/char/synclink_gt.c index 792c79c315e0..54af763518fe 100644 --- a/drivers/char/synclink_gt.c +++ b/drivers/char/synclink_gt.c | |||
@@ -1045,7 +1045,6 @@ static void flush_buffer(struct tty_struct *tty) | |||
1045 | info->tx_count = 0; | 1045 | info->tx_count = 0; |
1046 | spin_unlock_irqrestore(&info->lock,flags); | 1046 | spin_unlock_irqrestore(&info->lock,flags); |
1047 | 1047 | ||
1048 | wake_up_interruptible(&tty->write_wait); | ||
1049 | tty_wakeup(tty); | 1048 | tty_wakeup(tty); |
1050 | } | 1049 | } |
1051 | 1050 | ||
@@ -1933,10 +1932,8 @@ static void bh_transmit(struct slgt_info *info) | |||
1933 | struct tty_struct *tty = info->tty; | 1932 | struct tty_struct *tty = info->tty; |
1934 | 1933 | ||
1935 | DBGBH(("%s bh_transmit\n", info->device_name)); | 1934 | DBGBH(("%s bh_transmit\n", info->device_name)); |
1936 | if (tty) { | 1935 | if (tty) |
1937 | tty_wakeup(tty); | 1936 | tty_wakeup(tty); |
1938 | wake_up_interruptible(&tty->write_wait); | ||
1939 | } | ||
1940 | } | 1937 | } |
1941 | 1938 | ||
1942 | static void dsr_change(struct slgt_info *info) | 1939 | static void dsr_change(struct slgt_info *info) |
diff --git a/drivers/char/synclinkmp.c b/drivers/char/synclinkmp.c index 8f4d67afe5bf..ebde4e552335 100644 --- a/drivers/char/synclinkmp.c +++ b/drivers/char/synclinkmp.c | |||
@@ -1258,7 +1258,6 @@ static void flush_buffer(struct tty_struct *tty) | |||
1258 | del_timer(&info->tx_timer); | 1258 | del_timer(&info->tx_timer); |
1259 | spin_unlock_irqrestore(&info->lock,flags); | 1259 | spin_unlock_irqrestore(&info->lock,flags); |
1260 | 1260 | ||
1261 | wake_up_interruptible(&tty->write_wait); | ||
1262 | tty_wakeup(tty); | 1261 | tty_wakeup(tty); |
1263 | } | 1262 | } |
1264 | 1263 | ||
@@ -2127,10 +2126,8 @@ void bh_transmit(SLMP_INFO *info) | |||
2127 | printk( "%s(%d):%s bh_transmit() entry\n", | 2126 | printk( "%s(%d):%s bh_transmit() entry\n", |
2128 | __FILE__,__LINE__,info->device_name); | 2127 | __FILE__,__LINE__,info->device_name); |
2129 | 2128 | ||
2130 | if (tty) { | 2129 | if (tty) |
2131 | tty_wakeup(tty); | 2130 | tty_wakeup(tty); |
2132 | wake_up_interruptible(&tty->write_wait); | ||
2133 | } | ||
2134 | } | 2131 | } |
2135 | 2132 | ||
2136 | void bh_status(SLMP_INFO *info) | 2133 | void bh_status(SLMP_INFO *info) |