summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2010-07-13 06:42:47 +0000
committermav <mav@FreeBSD.org>2010-07-13 06:42:47 +0000
commitbc9554cce6ad9c32fb43ea7772ff1c42c04bdcbc (patch)
tree255f2312e98048a2616a8fd0698cb3f8354a3136 /sys/dev/ata
parent8b9f5e749e99fd79a3e8d4f8b7e91d8d316da6cd (diff)
downloadFreeBSD-src-bc9554cce6ad9c32fb43ea7772ff1c42c04bdcbc.zip
FreeBSD-src-bc9554cce6ad9c32fb43ea7772ff1c42c04bdcbc.tar.gz
Disable multi-sector PIO transfers if ATA_SET_MULTI command failed.
Submitted by: Mikolaj Golub on fs@
Diffstat (limited to 'sys/dev/ata')
-rw-r--r--sys/dev/ata/ata-disk.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/ata/ata-disk.c b/sys/dev/ata/ata-disk.c
index e80cd2f..722bce5d 100644
--- a/sys/dev/ata/ata-disk.c
+++ b/sys/dev/ata/ata-disk.c
@@ -406,6 +406,8 @@ ad_init(device_t dev)
if (!ata_controlcmd(dev, ATA_SET_MULTI, 0, 0, secsperint))
atadev->max_iosize = secsperint * DEV_BSIZE;
+ else
+ atadev->max_iosize = DEV_BSIZE;
}
else
atadev->max_iosize = DEV_BSIZE;
OpenPOWER on IntegriCloud