PCI: pcie_portdriver: fix pcie_port_device_remove
authorEric W. Biederman <ebiederm@xmission.com>
Sat, 21 Feb 2009 04:16:07 +0000 (20:16 -0800)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Fri, 20 Mar 2009 17:47:33 +0000 (10:47 -0700)
commitae40582e9959cdb7bfe4b918be8e3d19f9511798
treebb46eb3c3ba364b219fa1138011c98e82237604b
parent10a0ef39fbd1d484c2bbc1ffd83d57ecef209140
PCI: pcie_portdriver: fix pcie_port_device_remove

pcie_port_device_remove currently calls the remove method of port
drivers twice.  Ouch!

We are calling device_for_each_child multiple times for no apparent
reason.

So make it simple. Place put_device and device_unregister into
remove_iter, and throw out the rest.  Only call device_for_each_child
once.

The code is simpler and actually works!

Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/pcie/portdrv_core.c