diff options
author | Robert Noland <rnoland@FreeBSD.org> | 2009-11-14 18:42:09 +0000 |
---|---|---|
committer | Robert Noland <rnoland@FreeBSD.org> | 2009-11-14 18:42:09 +0000 |
commit | cb752cfcac9e53cac9546b8711894bb7ae2d27b7 (patch) | |
tree | df2a4030c1e0238cc59f5877e1c2644e3d0d12a0 | |
parent | 9bcf40edac644d7caa9721e7e7aa683ef810dcd3 (diff) |
MFC r199241
This patch addresses an overflow in the the zfs boot code and allows
users to boot from zfs raidz volumes. This has been tested by a number
of users and does not impact those which are not booting from zfs raidz
volumes.
Submitted by: Matt Reimer <mattjreimer@gmail.com>
Approved by: re (kib)
Notes
Notes:
svn path=/releng/8.0/; revision=199275
-rw-r--r-- | sys/cddl/boot/zfs/zfssubr.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/cddl/boot/zfs/zfssubr.c b/sys/cddl/boot/zfs/zfssubr.c index fb4444f242eb..4013986c18c3 100644 --- a/sys/cddl/boot/zfs/zfssubr.c +++ b/sys/cddl/boot/zfs/zfssubr.c @@ -550,7 +550,8 @@ vdev_raidz_read(vdev_t *vdev, const blkptr_t *bp, void *buf, uint64_t s = psize >> unit_shift; uint64_t f = b % dcols; uint64_t o = (b / dcols) << unit_shift; - int q, r, c, c1, bc, col, acols, coff, devidx, asize, n; + uint64_t q, r, coff; + int c, c1, bc, col, acols, devidx, asize, n; static raidz_col_t cols[16]; raidz_col_t *rc, *rc1; |