aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64
diff options
context:
space:
mode:
authorJiri Slaby <jslaby@suse.cz>2012-02-24 06:10:18 -0500
committerTony Luck <tony.luck@intel.com>2012-02-24 17:26:05 -0500
commit0efb34f298b6b12dc9377159c8a6d1b7b73b03bf (patch)
tree0d62c76112826c7e52540c081384075061a32311 /arch/ia64
parentcb5348554bc715199e49dba4d6bcc58786b4a69c (diff)
[IA64] 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: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64')
-rw-r--r--arch/ia64/hp/sim/simserial.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/arch/ia64/hp/sim/simserial.c b/arch/ia64/hp/sim/simserial.c
index 797e89a6c4eb..60c9093bbeae 100644
--- a/arch/ia64/hp/sim/simserial.c
+++ b/arch/ia64/hp/sim/simserial.c
@@ -702,15 +702,8 @@ startup(struct async_struct *info)
702 handler = rs_interrupt_single; 702 handler = rs_interrupt_single;
703 703
704 retval = request_irq(state->irq, handler, IRQ_T(info), "simserial", NULL); 704 retval = request_irq(state->irq, handler, IRQ_T(info), "simserial", NULL);
705 if (retval) { 705 if (retval)
706 if (capable(CAP_SYS_ADMIN)) {
707 if (info->tty)
708 set_bit(TTY_IO_ERROR,
709 &info->tty->flags);
710 retval = 0;
711 }
712 goto errout; 706 goto errout;
713 }
714 } 707 }
715 708
716 /* 709 /*