Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
PCI hotplug: ibmphp: Fix module ref count underflow
PCI hotplug: acpiphp wants a 64-bit _SUN
PCI: pciehp: fix unexpected power off with pciehp_force
PCI: fix aer resume sanity check

+17 -21
+1 -1
drivers/pci/hotplug/acpiphp.h
··· 113 113 114 114 u8 device; /* pci device# */ 115 115 116 - u32 sun; /* ACPI _SUN (slot unique number) */ 116 + unsigned long long sun; /* ACPI _SUN (slot unique number) */ 117 117 u32 flags; /* see below */ 118 118 }; 119 119
+1 -1
drivers/pci/hotplug/acpiphp_core.c
··· 337 337 slot->hotplug_slot->info->cur_bus_speed = PCI_SPEED_UNKNOWN; 338 338 339 339 acpiphp_slot->slot = slot; 340 - snprintf(name, SLOT_NAME_SIZE, "%u", slot->acpi_slot->sun); 340 + snprintf(name, SLOT_NAME_SIZE, "%llu", slot->acpi_slot->sun); 341 341 342 342 retval = pci_hp_register(slot->hotplug_slot, 343 343 acpiphp_slot->bridge->pci_bus,
+2 -2
drivers/pci/hotplug/acpiphp_glue.c
··· 255 255 256 256 bridge->nr_slots++; 257 257 258 - dbg("found ACPI PCI Hotplug slot %d at PCI %04x:%02x:%02x\n", 258 + dbg("found ACPI PCI Hotplug slot %llu at PCI %04x:%02x:%02x\n", 259 259 slot->sun, pci_domain_nr(bridge->pci_bus), 260 260 bridge->pci_bus->number, slot->device); 261 261 retval = acpiphp_register_hotplug_slot(slot); 262 262 if (retval) { 263 263 if (retval == -EBUSY) 264 - warn("Slot %d already registered by another " 264 + warn("Slot %llu already registered by another " 265 265 "hotplug driver\n", slot->sun); 266 266 else 267 267 warn("acpiphp_register_hotplug_slot failed "
-5
drivers/pci/hotplug/ibmphp_core.c
··· 1402 1402 goto error; 1403 1403 } 1404 1404 1405 - /* lock ourselves into memory with a module 1406 - * count of -1 so that no one can unload us. */ 1407 - module_put(THIS_MODULE); 1408 - 1409 1405 exit: 1410 1406 return rc; 1411 1407 ··· 1419 1423 } 1420 1424 1421 1425 module_init(ibmphp_init); 1422 - module_exit(ibmphp_exit);
+12 -11
drivers/pci/hotplug/pciehp_core.c
··· 432 432 goto err_out_release_ctlr; 433 433 } 434 434 435 + /* Check if slot is occupied */ 435 436 t_slot = pciehp_find_slot(ctrl, ctrl->slot_device_offset); 436 - 437 - t_slot->hpc_ops->get_adapter_status(t_slot, &value); /* Check if slot is occupied */ 438 - if (value && pciehp_force) { 439 - rc = pciehp_enable_slot(t_slot); 440 - if (rc) /* -ENODEV: shouldn't happen, but deal with it */ 441 - value = 0; 442 - } 443 - if ((POWER_CTRL(ctrl)) && !value) { 444 - rc = t_slot->hpc_ops->power_off_slot(t_slot); /* Power off slot if not occupied*/ 445 - if (rc) 446 - goto err_out_free_ctrl_slot; 437 + t_slot->hpc_ops->get_adapter_status(t_slot, &value); 438 + if (value) { 439 + if (pciehp_force) 440 + pciehp_enable_slot(t_slot); 441 + } else { 442 + /* Power off slot if not occupied */ 443 + if (POWER_CTRL(ctrl)) { 444 + rc = t_slot->hpc_ops->power_off_slot(t_slot); 445 + if (rc) 446 + goto err_out_free_ctrl_slot; 447 + } 447 448 } 448 449 449 450 return 0;
+1 -1
drivers/pci/pcie/aer/aerdrv_core.c
··· 252 252 253 253 if (!dev->driver || 254 254 !dev->driver->err_handler || 255 - !dev->driver->err_handler->slot_reset) 255 + !dev->driver->err_handler->resume) 256 256 return; 257 257 258 258 err_handler = dev->driver->err_handler;