diff options
author | Johannes Weiner <hannes@cmpxchg.org> | 2009-02-13 04:38:04 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-02-13 10:52:07 +0100 |
commit | 0e43785c57fee50fbc00ea0378e941efb61fa0c2 (patch) | |
tree | f90ec1d34d987a48707fe455534f16b191702f8a /kernel/irq/manage.c | |
parent | 74296a8ed6aa3c5bf672808ada690de7ba323ecc (diff) | |
download | blackbird-op-linux-0e43785c57fee50fbc00ea0378e941efb61fa0c2.tar.gz blackbird-op-linux-0e43785c57fee50fbc00ea0378e941efb61fa0c2.zip |
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/irq/manage.c')
-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, if (!handler) return -EINVAL; - action = kmalloc(sizeof(struct irqaction), GFP_ATOMIC); + action = kmalloc(sizeof(struct irqaction), GFP_KERNEL); if (!action) return -ENOMEM; |