• Bartlomiej Zolnierkiewicz's avatar
    ide: fix hwif->gendev refcounting · 7cd95f56
    Bartlomiej Zolnierkiewicz authored
    class->dev_release is called by device_release() iff dev->release
    is not present so ide_port_class_release() is never called and the
    last hwif->gendev reference is not dropped.
    
    Fix it by removing ide_port_class_release() and get_device() call
    from ide_register_port() (device_create_drvdata() takes a hwif->gendev
    reference anyway).
    
    This patch fixes hang on wait_for_completion(&hwif->gendev_rel_comp)
    in ide_unregister() reported by Pavel Machek.
    
    Cc: Pavel Machek <pavel@suse.cz>
    Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
    Cc: Greg KH <greg@kroah.com>
    Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
    7cd95f56
ide.c 33 KB