[tip:x86/apic] x86, ioapic: Throw BUG instead of NULL dereference

From: tip-bot for Cyrill Gorcunov
Date: Tue Aug 04 2009 - 10:17:22 EST


Commit-ID: 460ba8dfa8decb3885256fc4cbb3d2ee46a6466f
Gitweb: http://git.kernel.org/tip/460ba8dfa8decb3885256fc4cbb3d2ee46a6466f
Author: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
AuthorDate: Sat, 1 Aug 2009 11:48:00 +0400
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Tue, 4 Aug 2009 16:11:54 +0200

x86, ioapic: Throw BUG instead of NULL dereference

Instead of plain NULL deref we better throw error
message with a backtrace. Actually we need more
gracious error handling here. Meanwhile leave it
as is.

Signed-off-by: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
Cc: yinghai@xxxxxxxxxx
LKML-Reference: <20090801075435.769301745@xxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
arch/x86/kernel/apic/io_apic.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index ffd8fdf..2a145d3 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -503,6 +503,10 @@ static void add_pin_to_irq_node(struct irq_cfg *cfg, int node, int apic, int pin
}

entry = get_one_free_irq_2_pin(node);
+ if (!entry) {
+ printk(KERN_ERR "can not alloc irq_pin_list\n");
+ BUG_ON(1);
+ }
entry->apic = apic;
entry->pin = pin;

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/