Commit 6676ae62 authored by Jeff Dike's avatar Jeff Dike Committed by Linus Torvalds

UML: console should handle spurious IRQS

The previous DEBUG_SHIRQ patch missed one case.  The console doesn't
set its host descriptors non-blocking.
Signed-off-by: default avatarJeff Dike <jdike@linux.intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 8daedea6
...@@ -157,7 +157,7 @@ static void tty_receive_char(struct tty_struct *tty, char ch) ...@@ -157,7 +157,7 @@ static void tty_receive_char(struct tty_struct *tty, char ch)
static int open_one_chan(struct chan *chan) static int open_one_chan(struct chan *chan)
{ {
int fd; int fd, err;
if(chan->opened) if(chan->opened)
return 0; return 0;
...@@ -168,6 +168,13 @@ static int open_one_chan(struct chan *chan) ...@@ -168,6 +168,13 @@ static int open_one_chan(struct chan *chan)
chan->data, &chan->dev); chan->data, &chan->dev);
if(fd < 0) if(fd < 0)
return fd; return fd;
err = os_set_fd_block(fd, 0);
if (err) {
(*chan->ops->close)(fd, chan->data);
return err;
}
chan->fd = fd; chan->fd = fd;
chan->opened = 1; chan->opened = 1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment