Re: [PATCH] ide: fix ioctl to pass requested transfer mode toide_find_dma_mode instead of UDMA6

From: David Miller
Date: Wed Nov 25 2009 - 18:05:08 EST


From: Hemant Pedanekar <hemantp@xxxxxx>
Date: Tue, 24 Nov 2009 17:20:50 +0530

> Currently, ide_cmd_ioctl when invoked for setting DMA transfer mode calls
> ide_find_dma_mode with requested mode as XFER_UDMA_6. This prevents setting DMA
> mode to any other value than the default (maximum) supported by the device (or
> UDMA6, if supported) irrespective of the actual requested transfer mode and
> returns error.
>
> For example, setting mode to UDMA2 using hdparm, where UDMA4 is the default
> transfer mode gives following error:
> # ./hdparm -d1 -Xudma2 /dev/hda
> /dev/hda:hda: UDMA/66 mode selected
> setting using_dma to 1 (on)
> hda: UDMA/66 mode selected
> setting xfermode to 66 (UltraDMA mode2)
> HDIO_DRIVE_CMD(setxfermode) failed: Invalid argument
> using_dma = 1 (on)
>
> This patch fixes the issue.
>
> Signed-off-by: Hemant Pedanekar <hemantp@xxxxxx>
> Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
> Acked-by: Sergei Shtylyov <sshtylyov@xxxxxxxxxxxxx>

Applied and queued up for -stable, thanks!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/