On Wed, 2006-01-18 at 21:42 +0100, Pavel Machek wrote:
> Hi!
>
> There's a bug in error handling:
>
> int __init acpiphp_glue_init(void)
> {
> int num = 0;
>
> acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
> ACPI_UINT32_MAX, find_root_bridges, &num,
> NULL);
>
> if (num <= 0)
> return -1;
> else
> acpi_pci_register_driver(&acpi_pci_hp_driver);
>
> return 0;
> }
>
> You register driver here, but if acpiphp_get_num_slots() returns 0
> later, you return -ENODEV, aborting load of driver, but without
> undergistering that driver. It oopses after a while. Same problem if
> init_slots() returns error.
>
> Pavel
This one needs some more thought on how to fix, because I'm not certain
if we have the code in place to back out of this once we find root
bridges that exist. it might be easy, but it might not be.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]