Lennert Buytenhek 3e44017b58 phylib: fix premature freeing of struct mii_bus
Commit 46abc02175b3c246dd5141d878f565a8725060c9 ("phylib: give mdio
buses a device tree presence") added a call to device_unregister() in
a situation where the caller did not intend for the device to be
freed yet, but apart from just unregistering the device from the
system, device_unregister() does an additional put_device() that is
intended to free it.

The right function to use in this situation is device_del(), which
unregisters the device from the system like device_unregister() does,
but without dropping the reference count an additional time.

Bug report from Bryan Wu <cooloney@kernel.org>.

Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Tested-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2008-11-14 18:19:40 -05:00
..
2008-11-03 15:23:02 -05:00
2008-10-16 16:52:05 +02:00
2008-10-08 16:53:40 -07:00
2008-10-16 16:52:05 +02:00
2008-06-10 18:20:17 -04:00
2008-08-14 04:26:38 -04:00
2008-10-12 21:15:17 -07:00
2008-07-18 17:54:17 -07:00
2008-10-09 12:22:38 -07:00
2008-10-09 12:26:41 -07:00
2008-08-13 16:05:38 -07:00
2008-08-13 16:05:37 -07:00
2008-08-13 16:05:37 -07:00
2008-11-03 16:46:58 -08:00
2008-08-13 16:05:37 -07:00
2008-09-03 14:38:00 -07:00
2008-09-22 19:27:10 -07:00
2008-09-22 19:27:10 -07:00
2008-03-26 00:18:43 -04:00
2008-10-08 17:09:54 -07:00
2008-11-14 18:18:30 -05:00
2008-05-22 14:12:40 -04:00
2008-09-16 19:35:05 -07:00
2008-07-22 17:50:44 -04:00
2008-08-27 05:36:57 -04:00
2008-07-25 15:44:44 +10:00
2008-03-17 08:11:41 -04:00
2008-08-14 04:26:38 -04:00
2008-10-08 19:51:33 -07:00
2008-11-03 15:23:12 -05:00
2008-04-25 02:08:51 -04:00
2008-10-08 17:09:54 -07:00
2008-07-22 17:50:44 -04:00
2008-03-17 07:56:33 -04:00
2008-03-26 00:18:00 -04:00
2008-05-30 22:19:22 -04:00
2008-03-05 16:34:41 -06:00
2008-07-20 17:12:34 -07:00
2008-07-20 17:12:34 -07:00
2008-10-30 23:35:02 -07:00
2008-10-17 02:38:35 +11:00
2008-08-07 02:11:15 -04:00
2008-04-16 20:41:44 -04:00
2008-05-30 22:07:17 -04:00
2008-08-07 02:20:57 -04:00
2008-10-12 20:59:48 -07:00
2008-08-07 01:55:50 -04:00
2008-07-20 17:12:34 -07:00
2008-10-22 06:22:13 -04:00
2008-04-16 20:06:50 -04:00
2008-08-29 02:13:33 -07:00
2008-03-23 03:35:12 -07:00
2008-08-29 02:14:29 -07:00
2008-08-31 20:59:37 -07:00
2008-08-29 02:14:43 -07:00
2008-10-12 21:01:53 -07:00
2008-05-30 22:18:02 -04:00
2008-11-01 09:49:46 -07:00