1
linux/drivers
Rafael J. Wysocki e7ae884866 PCI: PCIe portdrv: Fix suspend and resume of PCI Express port services
There is a problem with the suspend and resume of PCI Express port
service devices that the ->suspend() and ->resume() routines of each
service device are called twice in each suspend-resume cycle, which
is obviously wrong.

The scenario is that first, the PCI Express port driver calls
suspend and resume routines of each port service driver from its
pcie_portdrv_suspend() and pcie_portdrv_resume() callbacks,
respectively (which is correct), and second, the pcie_port_bus_type
driver calls them from its ->suspend() and ->resume() callbacks
(which is not correct, because it doesn't happen at the right time).

The solution is to remove the ->suspend() and ->resume() callbacks
from pcie_port_bus_type and the associated functions.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2009-01-07 11:13:26 -08:00
..
accessibility
acpi ACPI/PCI: PCI MSI _OSC support capabilities called when root bridge added 2009-01-07 11:12:31 -08:00
amba
ata libata: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:43 -08:00
atm
auxdisplay
base Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
block Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus 2008-12-30 17:37:25 -08:00
bluetooth
cdrom
char Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
clocksource Merge branch 'cpus4096-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-01-02 11:44:09 -08:00
connector
cpufreq
cpuidle
crypto
dca
dio
dma
edac edac: driver for i5400 MCH (update) 2009-01-06 15:59:30 -08:00
eisa
firewire
firmware Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
gpio Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
gpu drm: fix ordering of driver unload vs agp unload. 2009-01-07 11:54:57 +10:00
hid Merge branch 'upstream-fixes' into for-next 2009-01-04 01:04:09 +01:00
hwmon Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
i2c Merge branch 'for-next' of git://git.o-hand.com/linux-mfd 2009-01-05 19:04:09 -08:00
ide scc_pata: make use of scc_dma_sff_read_status() 2009-01-06 17:21:02 +01:00
idle i7300_idle: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:39 -08:00
ieee1394
infiniband infiniband: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:39 -08:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2009-01-06 17:14:01 -08:00
isdn ISDN: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:39 -08:00
leds
lguest lguest: do not statically allocate root device 2009-01-06 10:44:34 -08:00
macintosh Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
mca
md dm snapshot: extend exception store functions 2009-01-06 03:05:19 +00:00
media poll: allow f_op->poll to sleep 2009-01-06 15:59:12 -08:00
memstick memstick: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:38 -08:00
message Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
mfd mfd: Fix section mismatch in da903x 2009-01-04 15:31:49 +01:00
misc Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
mmc Merge branch 'master' of ../mmc 2008-12-31 19:56:05 +01:00
mtd mtd: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:38 -08:00
net net: sfc: Use pci_clear_master() to disable bus mastering 2009-01-07 11:13:24 -08:00
nubus
of
oprofile zero i_uid/i_gid on inode allocation 2009-01-05 11:54:28 -05:00
parisc PCI: parisc: use generic pci_swizzle_interrupt_pin() 2009-01-07 11:12:55 -08:00
parport parport: ieee1284: use del_timer_sync() in parport_wait_event() 2009-01-06 15:59:31 -08:00
pci PCI: PCIe portdrv: Fix suspend and resume of PCI Express port services 2009-01-07 11:13:26 -08:00
pcmcia
pnp pnp: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:38 -08:00
power power-supply: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:38 -08:00
ps3
rapidio rapidio: remove excess kernel-doc notation 2009-01-06 15:59:28 -08:00
regulator mfd: Support configurable numbers of DCDCs and ISINKs on WM8350 2009-01-04 12:17:42 +01:00
rtc drivers/rtc: correct an error test 2009-01-06 15:59:25 -08:00
s390 s390: remove s390_root_dev_*() 2009-01-06 10:44:34 -08:00
sbus
scsi remove ide-scsi 2009-01-02 16:12:51 +01:00
serial serial: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:37 -08:00
sh
sn
spi Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
ssb
staging Staging: android: binder: fix build errors 2009-01-06 13:52:46 -08:00
tc
telephony
thermal thermal: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:37 -08:00
uio UIO: Pass information about ioports to userspace (V2) 2009-01-06 10:44:44 -08:00
usb gadget: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:42 -08:00
uwb Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-upstream 2009-01-02 13:17:13 +00:00
video Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-01-06 17:02:07 -08:00
virtio virtio: do not statically allocate root device 2009-01-06 10:44:34 -08:00
w1 w1: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:34 -08:00
watchdog [WATCHDOG] Add support for the WM8350 watchdog 2008-12-31 16:12:54 +00:00
xen xen: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:34 -08:00
zorro
Kconfig
Makefile