summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2010-12-30 20:29:13 +0000
committerkettenis <kettenis@openbsd.org>2010-12-30 20:29:13 +0000
commitf25bfcfcd08577a5cde199c8ed9e17ffbc2f5a52 (patch)
tree780a6c8140521bee57ecfac296125fb78faffe48
parentbsd.mp here too (diff)
downloadwireguard-openbsd-f25bfcfcd08577a5cde199c8ed9e17ffbc2f5a52.tar.xz
wireguard-openbsd-f25bfcfcd08577a5cde199c8ed9e17ffbc2f5a52.zip
The NVIDIA MCP89 SATA controller found on the 2010 Apple 13" MacBook Pro
can't address block 0xffffffff in LBA mode, at least in combination with the Hitachi HTS545032B9SA02 and HTS545050B9SA02 drives that Apple ships. So use LBA48 mode from that block onwards. ok marco@, deraadt@, miod@
-rw-r--r--sys/dev/ata/wd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/ata/wd.c b/sys/dev/ata/wd.c
index d2095d9c272..1251a8370e5 100644
--- a/sys/dev/ata/wd.c
+++ b/sys/dev/ata/wd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: wd.c,v 1.95 2010/09/22 01:18:57 matthew Exp $ */
+/* $OpenBSD: wd.c,v 1.96 2010/12/30 20:29:13 kettenis Exp $ */
/* $NetBSD: wd.c,v 1.193 1999/02/28 17:15:27 explorer Exp $ */
/*
@@ -548,7 +548,7 @@ __wdstart(struct wd_softc *wd, struct buf *bp)
nblks = bp->b_bcount / wd->sc_dk.dk_label->d_secsize;
if ((wd->sc_flags & WDF_LBA48) &&
/* use LBA48 only if really need */
- ((wd->sc_wdc_bio.blkno + nblks - 1 > LBA48_THRESHOLD) ||
+ ((wd->sc_wdc_bio.blkno + nblks - 1 >= LBA48_THRESHOLD) ||
(nblks > 0xff)))
wd->sc_wdc_bio.flags |= ATA_LBA48;
if (wd->sc_flags & WDF_LBA)