ide: fix races in handling of user-space SET XFER commands
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 23 Jun 2009 11:35:51 +0000 (11:35 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 7 Aug 2009 17:43:00 +0000 (10:43 -0700)
commit665d66e8fad60a5a162c4615f27f916ad1a6d567
tree2e4f699f4fec1ca4010a39b9dd787fbd5f03b44d
parentfa56d4cb4022c8b313c3b99236e1b87effc3655b
ide: fix races in handling of user-space SET XFER commands

* Make cmd->tf_flags field 'u16' and add IDE_TFLAG_SET_XFER taskfile flag.

* Update ide_finish_cmd() to set xfer / re-read id if the new flag is set.

* Convert set_xfer_rate() (write handler for /proc/ide/hd?/current_speed)
  and ide_cmd_ioctl() (HDIO_DRIVE_CMD ioctl handler) to use the new flag.

* Remove no longer needed disable_irq_nosync() + enable_irq() from
  ide_config_drive_speed().

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/ide/ide-ioctls.c
drivers/ide/ide-iops.c
drivers/ide/ide-proc.c
drivers/ide/ide-taskfile.c
include/linux/ide.h