提交 c0b79a90 编写于 作者: Y Yong Zhang 提交者: Richard Weinberger

um: irq: Remove IRQF_DISABLED

Since commit [e58aa3d2: genirq: Run irq handlers with interrupts disabled],
We run all interrupt handlers with interrupts disabled
and we even check and yell when an interrupt handler
returns with interrupts enabled (see commit [b738a50a:
genirq: Warn when handler enables interrupts]).

So now this flag is a NOOP and can be removed.
Signed-off-by: NYong Zhang <yong.zhang0@gmail.com>
Signed-off-by: NRichard Weinberger <richard@nod.at>
上级 c16fa4f2
...@@ -347,8 +347,8 @@ static irqreturn_t line_write_interrupt(int irq, void *data) ...@@ -347,8 +347,8 @@ static irqreturn_t line_write_interrupt(int irq, void *data)
int err; int err;
/* /*
* Interrupts are disabled here because we registered the interrupt with * Interrupts are disabled here because genirq keep irqs disabled when
* IRQF_DISABLED (see line_setup_irq). * calling the action handler.
*/ */
spin_lock(&line->lock); spin_lock(&line->lock);
...@@ -371,7 +371,7 @@ static irqreturn_t line_write_interrupt(int irq, void *data) ...@@ -371,7 +371,7 @@ static irqreturn_t line_write_interrupt(int irq, void *data)
int line_setup_irq(int fd, int input, int output, struct line *line, void *data) int line_setup_irq(int fd, int input, int output, struct line *line, void *data)
{ {
const struct line_driver *driver = line->driver; const struct line_driver *driver = line->driver;
int err = 0, flags = IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM; int err = 0, flags = IRQF_SHARED | IRQF_SAMPLE_RANDOM;
if (input) if (input)
err = um_request_irq(driver->read_irq, fd, IRQ_READ, err = um_request_irq(driver->read_irq, fd, IRQ_READ,
...@@ -807,7 +807,7 @@ void register_winch_irq(int fd, int tty_fd, int pid, struct tty_struct *tty, ...@@ -807,7 +807,7 @@ void register_winch_irq(int fd, int tty_fd, int pid, struct tty_struct *tty,
.stack = stack }); .stack = stack });
if (um_request_irq(WINCH_IRQ, fd, IRQ_READ, winch_interrupt, if (um_request_irq(WINCH_IRQ, fd, IRQ_READ, winch_interrupt,
IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
"winch", winch) < 0) { "winch", winch) < 0) {
printk(KERN_ERR "register_winch_irq - failed to register " printk(KERN_ERR "register_winch_irq - failed to register "
"IRQ\n"); "IRQ\n");
......
...@@ -773,7 +773,7 @@ static int __init mconsole_init(void) ...@@ -773,7 +773,7 @@ static int __init mconsole_init(void)
register_reboot_notifier(&reboot_notifier); register_reboot_notifier(&reboot_notifier);
err = um_request_irq(MCONSOLE_IRQ, sock, IRQ_READ, mconsole_interrupt, err = um_request_irq(MCONSOLE_IRQ, sock, IRQ_READ, mconsole_interrupt,
IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
"mconsole", (void *)sock); "mconsole", (void *)sock);
if (err) { if (err) {
printk(KERN_ERR "Failed to get IRQ for management console\n"); printk(KERN_ERR "Failed to get IRQ for management console\n");
......
...@@ -161,7 +161,7 @@ static int uml_net_open(struct net_device *dev) ...@@ -161,7 +161,7 @@ static int uml_net_open(struct net_device *dev)
} }
err = um_request_irq(dev->irq, lp->fd, IRQ_READ, uml_net_interrupt, err = um_request_irq(dev->irq, lp->fd, IRQ_READ, uml_net_interrupt,
IRQF_DISABLED | IRQF_SHARED, dev->name, dev); IRQF_SHARED, dev->name, dev);
if (err != 0) { if (err != 0) {
printk(KERN_ERR "uml_net_open: failed to get irq(%d)\n", err); printk(KERN_ERR "uml_net_open: failed to get irq(%d)\n", err);
err = -ENETUNREACH; err = -ENETUNREACH;
......
...@@ -100,7 +100,7 @@ static int port_accept(struct port_list *port) ...@@ -100,7 +100,7 @@ static int port_accept(struct port_list *port)
.port = port }); .port = port });
if (um_request_irq(TELNETD_IRQ, socket[0], IRQ_READ, pipe_interrupt, if (um_request_irq(TELNETD_IRQ, socket[0], IRQ_READ, pipe_interrupt,
IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
"telnetd", conn)) { "telnetd", conn)) {
printk(KERN_ERR "port_accept : failed to get IRQ for " printk(KERN_ERR "port_accept : failed to get IRQ for "
"telnetd\n"); "telnetd\n");
...@@ -184,7 +184,7 @@ void *port_data(int port_num) ...@@ -184,7 +184,7 @@ void *port_data(int port_num)
} }
if (um_request_irq(ACCEPT_IRQ, fd, IRQ_READ, port_interrupt, if (um_request_irq(ACCEPT_IRQ, fd, IRQ_READ, port_interrupt,
IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
"port", port)) { "port", port)) {
printk(KERN_ERR "Failed to get IRQ for port %d\n", port_num); printk(KERN_ERR "Failed to get IRQ for port %d\n", port_num);
goto out_close; goto out_close;
......
...@@ -131,7 +131,7 @@ static int __init rng_init (void) ...@@ -131,7 +131,7 @@ static int __init rng_init (void)
random_fd = err; random_fd = err;
err = um_request_irq(RANDOM_IRQ, random_fd, IRQ_READ, random_interrupt, err = um_request_irq(RANDOM_IRQ, random_fd, IRQ_READ, random_interrupt,
IRQF_DISABLED | IRQF_SAMPLE_RANDOM, "random", IRQF_SAMPLE_RANDOM, "random",
NULL); NULL);
if (err) if (err)
goto err_out_cleanup_hw; goto err_out_cleanup_hw;
......
...@@ -1115,7 +1115,7 @@ static int __init ubd_driver_init(void){ ...@@ -1115,7 +1115,7 @@ static int __init ubd_driver_init(void){
return 0; return 0;
} }
err = um_request_irq(UBD_IRQ, thread_fd, IRQ_READ, ubd_intr, err = um_request_irq(UBD_IRQ, thread_fd, IRQ_READ, ubd_intr,
IRQF_DISABLED, "ubd", ubd_devs); 0, "ubd", ubd_devs);
if(err != 0) if(err != 0)
printk(KERN_ERR "um_request_irq failed - errno = %d\n", -err); printk(KERN_ERR "um_request_irq failed - errno = %d\n", -err);
return 0; return 0;
......
...@@ -50,7 +50,7 @@ int xterm_fd(int socket, int *pid_out) ...@@ -50,7 +50,7 @@ int xterm_fd(int socket, int *pid_out)
init_completion(&data->ready); init_completion(&data->ready);
err = um_request_irq(XTERM_IRQ, socket, IRQ_READ, xterm_interrupt, err = um_request_irq(XTERM_IRQ, socket, IRQ_READ, xterm_interrupt,
IRQF_DISABLED | IRQF_SHARED | IRQF_SAMPLE_RANDOM, IRQF_SHARED | IRQF_SAMPLE_RANDOM,
"xterm", data); "xterm", data);
if (err) { if (err) {
printk(KERN_ERR "xterm_fd : failed to get IRQ for xterm, " printk(KERN_ERR "xterm_fd : failed to get IRQ for xterm, "
......
...@@ -25,7 +25,7 @@ int write_sigio_irq(int fd) ...@@ -25,7 +25,7 @@ int write_sigio_irq(int fd)
int err; int err;
err = um_request_irq(SIGIO_WRITE_IRQ, fd, IRQ_READ, sigio_interrupt, err = um_request_irq(SIGIO_WRITE_IRQ, fd, IRQ_READ, sigio_interrupt,
IRQF_DISABLED|IRQF_SAMPLE_RANDOM, "write sigio", IRQF_SAMPLE_RANDOM, "write sigio",
NULL); NULL);
if (err) { if (err) {
printk(KERN_ERR "write_sigio_irq : um_request_irq failed, " printk(KERN_ERR "write_sigio_irq : um_request_irq failed, "
......
...@@ -82,7 +82,7 @@ static void __init setup_itimer(void) ...@@ -82,7 +82,7 @@ static void __init setup_itimer(void)
{ {
int err; int err;
err = request_irq(TIMER_IRQ, um_timer, IRQF_DISABLED, "timer", NULL); err = request_irq(TIMER_IRQ, um_timer, 0, "timer", NULL);
if (err != 0) if (err != 0)
printk(KERN_ERR "register_timer : request_irq failed - " printk(KERN_ERR "register_timer : request_irq failed - "
"errno = %d\n", -err); "errno = %d\n", -err);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册