aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um
diff options
context:
space:
mode:
Diffstat (limited to 'arch/um')
-rw-r--r--arch/um/drivers/chan_kern.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/arch/um/drivers/chan_kern.c b/arch/um/drivers/chan_kern.c
index cd13b91b9ff6..ab0d0b170816 100644
--- a/arch/um/drivers/chan_kern.c
+++ b/arch/um/drivers/chan_kern.c
@@ -186,9 +186,6 @@ static void tty_receive_char(struct tty_struct *tty, char ch)
186 } 186 }
187 } 187 }
188 188
189 if((tty->flip.flag_buf_ptr == NULL) ||
190 (tty->flip.char_buf_ptr == NULL))
191 return;
192 tty_insert_flip_char(tty, ch, TTY_NORMAL); 189 tty_insert_flip_char(tty, ch, TTY_NORMAL);
193} 190}
194 191
@@ -653,8 +650,7 @@ void chan_interrupt(struct list_head *chans, struct work_struct *task,
653 chan = list_entry(ele, struct chan, list); 650 chan = list_entry(ele, struct chan, list);
654 if(!chan->input || (chan->ops->read == NULL)) continue; 651 if(!chan->input || (chan->ops->read == NULL)) continue;
655 do { 652 do {
656 if((tty != NULL) && 653 if (tty && !tty_buffer_request_room(tty, 1)) {
657 (tty->flip.count >= TTY_FLIPBUF_SIZE)){
658 schedule_delayed_work(task, 1); 654 schedule_delayed_work(task, 1);
659 goto out; 655 goto out;
660 } 656 }