11 Oct, 2007

1 commit

  • device_bind_driver() error code returning has been fixed. release()
    function has been written, so that to free resources in correct way; the
    release path is now clean.

    Before the rework, it used to cause
    Device 'fixed@100:1' does not have a release() function, it is broken
    and must be fixed.
    BUG: at drivers/base/core.c:104 device_release()

    Call Trace:
    [] kobject_cleanup+0x53/0x7e
    [] kobject_release+0x0/0x9
    [] kref_put+0x74/0x81
    [] fixed_mdio_register_device+0x230/0x265
    [] fixed_init+0x1f/0x35
    [] init+0x147/0x2fb
    [] schedule_tail+0x36/0x92
    [] child_rip+0xa/0x12
    [] acpi_ds_init_one_object+0x0/0x83
    [] init+0x0/0x2fb
    [] child_rip+0x0/0x12

    Also changed the notation of the fixed phy definition on
    mdio bus to the form of + to make it able to be used by
    gianfar and ucc_geth that define phy_id strictly as "%d:%d" and cleaned up
    the whitespace issues.

    Signed-off-by: Vitaly Bordug
    Signed-off-by: Andrew Morton
    Signed-off-by: Jeff Garzik

    Vitaly Bordug