-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
=============================================================================
FreeBSD-EN-13:03.mfi Errata Notice
The FreeBSD Project
Topic: data corruption with mfi(4) JBOD disks > 2TB
Category: contrib
Module: mfi
Announced: 2013-08-22
Credits: Steven Hartland, Doug Ambrisko
Affects: FreeBSD 9.1
Corrected: 2012-12-03 18:37:02 UTC (stable/9, 9.1-STABLE)
2013-08-22 00:51:48 UTC (releng/9.1, 9.1-RELEASE-p6)
For general information regarding FreeBSD Errata Notices and Security
Advisories, including descriptions of the fields above, security
branches, and the following sections, please visit
<URL:http://security.freebsd.org/>.
I. Background
The mfi(4) driver supports LSI's next generation PCI Express SAS RAID
controllers. The driver supports JBOD attachment through /dev/mfisyspd?
device nodes.
Logical block addressing (LBA) is a common scheme used for specifying the
location of sectors on hard drives.
II. Problem Description
The way mfi(4) implements access of "syspd" or also known as JBOD always
uses READ10/WRITE10 commands for underlying disk. When writing over 2^32
sectors, the LBA would wrap and starts writing at the beginning of the
disk.
III. Impact
Writing beyond 2TB to mfi(4) connected JBODs would result in data corruption.
IV. Workaround
No workaround is available, but systems that do not use mfi(4) as a JBOD
HBA or do not have disks with 2^32 or more sectors (2^41 or more bytes with
512-byte logical sector size) are not affected.
V. Solution
Perform one of the following:
1) Upgrade your system to a supported FreeBSD stable or release / security
branch (releng) dated after the correction date.
2) To update your present system via a source code patch:
The following patches have been verified to apply to the applicable
FreeBSD release branches.
a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.
# fetch http://security.FreeBSD.org/patches/EN-13:03/mfi.patch
# fetch http://security.FreeBSD.org/patches/EN-13:03/mfi.patch.asc
# gpg --verify mfi.patch.asc
b) Apply the patch.
# cd /usr/src
# patch < /path/to/patch
c) Recompile your kernel as described in
<URL:http://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the
system.
3) To update your system via a binary patch:
Systems running a RELEASE version of FreeBSD on the i386 or amd64
platforms can be updated via the freebsd-update(8) utility:
# freebsd-update fetch
# freebsd-update install
VI. Correction details
The following list contains the revision numbers of each file that was
corrected in FreeBSD.
Branch/path Revision
- -------------------------------------------------------------------------
stable/9/ r243824
releng/9.1/ r254631
- -------------------------------------------------------------------------
VII. References
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/173291
The latest revision of this Errata Notice is available at
http://security.FreeBSD.org/advisories/FreeBSD-EN-13:03.mfi.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (FreeBSD)
iEYEARECAAYFAlIVY1YACgkQFdaIBMps37IHmwCfZH+1Gi0u7eYMXYevu0KHaG3a
rCwAn2ecdXnLOsaC6D6i2mo4dmI4HLDk
=AwdQ
-----END PGP SIGNATURE-----