diff options
author | Johannes Weiner <hannes@cmpxchg.org> | 2009-02-12 22:38:04 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-02-13 04:52:07 -0500 |
commit | 0e43785c57fee50fbc00ea0378e941efb61fa0c2 (patch) | |
tree | f90ec1d34d987a48707fe455534f16b191702f8a /kernel | |
parent | 74296a8ed6aa3c5bf672808ada690de7ba323ecc (diff) |
irq: use GFP_KERNEL for action allocation in request_irq()
request_irq() calls into proc code via __setup_irq() which is not safe
in an atomic context, so request_irq() can itself use the more
reliable GFP_KERNEL allocation for the action descriptor.
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/irq/manage.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index cd0cd8dcb345..1c5055069170 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -717,7 +717,7 @@ int request_irq(unsigned int irq, irq_handler_t handler, | |||
717 | if (!handler) | 717 | if (!handler) |
718 | return -EINVAL; | 718 | return -EINVAL; |
719 | 719 | ||
720 | action = kmalloc(sizeof(struct irqaction), GFP_ATOMIC); | 720 | action = kmalloc(sizeof(struct irqaction), GFP_KERNEL); |
721 | if (!action) | 721 | if (!action) |
722 | return -ENOMEM; | 722 | return -ENOMEM; |
723 | 723 | ||