提交 6676ae62 编写于 作者: J Jeff Dike 提交者: 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: NJeff Dike <jdike@linux.intel.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 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% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册