Matthew Garrett wrote: > On Tue, Nov 04, 2008 at 03:44:23PM +0000, Alan Jenkins wrote: > > >> I instrumented all the delays I could find. hpc_check_lnk_status() was >> the only one that came up. 1000ms delay per call, and I get 6 such delays. >> > > Ok, which is getting called from pciehp_enable_slot(). I'm not quite > clear on why this is being called 6 times - any chance you can put a > dump_stack() in there? Some are probably directly from the resume code. > This confuses me a little, since there's a check for whether there's a > card in the slot first. If that fails, pciehp_enable_slot() isn't > called. If it succeeds, pciehp_enable_slot checks whether the slot is > already powered up. If it is, it bails before doing the link setup. So > something funny is going on here, since on the Eee I'd expect those > slots to either be empty or already powered up. > > [ 258.344326] ACPI: Waking up from system sleep state S3 A [ 259.856649] [] hpc_check_lnk_status+0x107/0x1ba [pciehp] [ 259.856649] [] pciehp_enable_slot+0x19d/0x2c9 [pciehp] [ 259.856649] [] pciehp_power_thread+0x96/0xcd [pciehp] [ 259.856649] [] pciehp_power_thread+0x0/0xcd [pciehp] [ 259.856649] [] run_workqueue+0x62/0xc9 ... B [ 260.860020] [] hpc_check_lnk_status+0x107/0x1ba [pciehp] [ 260.860020] [] pciehp_enable_slot+0x19d/0x2c9 [pciehp] [ 260.860020] [] resume_iter+0x0/0x25 [ 260.860020] [] hpc_get_adapter_status+0x26/0x65 [pciehp] [ 260.860020] [] resume_iter+0x0/0x25 [ 260.860020] [] pciehp_resume+0xce/0xde [pciehp] [ 260.860020] [] resume_iter+0x22/0x25 [ 260.860020] [] device_for_each_child+0x1a/0x3b [ 260.860020] [] pci_legacy_resume+0x15/0x16 [ 260.860020] [] pm_op+0x52/0xac [ 260.860020] [] device_resume+0x7d/0x2d2 [ 260.860020] [] suspend_devices_and_enter+0xc7/0xfb ... [ 263.393352] A [ 264.396686] B [ 265.466684] B [ 266.470019] B And there are two more during boot (see below), I'd like them to go away too please :). [ 5.370046] [] hpc_check_lnk_status+0x107/0x1ba [pciehp] [ 5.370046] [] pciehp_enable_slot+0x19d/0x2c9 [pciehp] [ 5.370046] [] hpc_get_adapter_status+0x26/0x65 [pciehp] [ 5.370046] [] pciehp_probe+0x3b2/0x3ee [pciehp] [ 5.370046] [] sysfs_do_create_link+0x97/0xd7 [ 5.370046] [] pcie_port_probe_service+0x29/0x63 [ 5.370046] [] driver_probe_device+0xa1/0x117 [ 5.370046] [] __driver_attach+0x49/0x67 [ 5.370046] [] bus_for_each_dev+0x35/0x56 [ 5.370046] [] driver_attach+0x11/0x13 [ 5.370046] [] __driver_attach+0x0/0x67 [ 5.370046] [] bus_add_driver+0x91/0x192 [ 5.370046] [] driver_register+0x6d/0xc2 [ 5.370046] [] sysfs_addrm_finish+0x13/0x16f [ 5.370046] [] pcied_init+0x0/0x5c [pciehp] [ 5.370046] [] pcied_init+0xb/0x5c [pciehp] Thanks Alan