Commit 9e12dd5f authored by Jiri Slaby's avatar Jiri Slaby Committed by Greg Kroah-Hartman

simserial, bail out when request_irq fails

Without this, the code succeeds when the port is opened by root and we
get unwanted interrupts storm on the first key stroke.

Instead of that, tell the user we failed and that we won't continue. I
suppose, the code was copied from the serial layer where we may want
to change the irq number, so we must allow open even of the failing
port. This is not the case for this driver at all.
Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 6efb6b77
...@@ -692,16 +692,9 @@ startup(struct async_struct *info) ...@@ -692,16 +692,9 @@ startup(struct async_struct *info)
handler = rs_interrupt_single; handler = rs_interrupt_single;
retval = request_irq(state->irq, handler, IRQ_T(info), "simserial", NULL); retval = request_irq(state->irq, handler, IRQ_T(info), "simserial", NULL);
if (retval) { if (retval)
if (capable(CAP_SYS_ADMIN)) {
if (info->tty)
set_bit(TTY_IO_ERROR,
&info->tty->flags);
retval = 0;
}
goto errout; goto errout;
} }
}
/* /*
* Insert serial port into IRQ chain. * Insert serial port into IRQ chain.
......
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