From: Li Shaohua In one of machines in our lab, spmi->addr.register_bit_width is 0 (so the returned address is invalid). Ignoring the check will cause inserting the module oops. Signed-off-by: Li Shaohua Signed-off-by: Andrew Morton --- 25-akpm/drivers/char/ipmi/ipmi_si_intf.c | 5 +++++ 1 files changed, 5 insertions(+) diff -puN drivers/char/ipmi/ipmi_si_intf.c~fix-oops-when-inserting-ipmi_si-module drivers/char/ipmi/ipmi_si_intf.c --- 25/drivers/char/ipmi/ipmi_si_intf.c~fix-oops-when-inserting-ipmi_si-module 2005-03-17 01:42:30.000000000 -0800 +++ 25-akpm/drivers/char/ipmi/ipmi_si_intf.c 2005-03-17 01:42:30.000000000 -0800 @@ -1477,6 +1477,11 @@ static int try_init_acpi(int intf_num, s if (!is_new_interface(-1, addr_space, spmi->addr.address)) return -ENODEV; + if (!spmi->addr.register_bit_width) { + acpi_failure = 1; + return -ENODEV; + } + /* Figure out the interface type. */ switch (spmi->InterfaceType) { _