IDE: Fix HDIO_DRIVE_RESET handling
authorElias Oltmanns <eo@nebensachen.de>
Wed, 16 Jul 2008 18:33:48 +0000 (20:33 +0200)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Wed, 16 Jul 2008 18:33:48 +0000 (20:33 +0200)
commit79e36a9f54aaf4a52eb2d9520953aa3960e99294
tree70fae17d64a1facde8541184d7139c4bc12d03bf
parent72a3d651b2fe341a8ae2ca164c395aa3007350cd
IDE: Fix HDIO_DRIVE_RESET handling

Currently, the code path executing an HDIO_DRIVE_RESET ioctl is broken
in various ways.  Most importantly, it is treated as an out of band
request in an illegal way which may very likely lead to system lock ups.
Use the drive's request queue to avoid this problem (and fix a locking
issue for free along the way).

Signed-off-by: Elias Oltmanns <eo@nebensachen.de>
Cc: "Alan Cox" <alan@lxorguk.ukuu.org.uk>
Cc: "Randy Dunlap" <randy.dunlap@oracle.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-io.c
drivers/ide/ide-iops.c
drivers/ide/ide.c
include/linux/ide.h