diff options
author | pfg <pfg@FreeBSD.org> | 2013-07-09 14:23:00 +0000 |
---|---|---|
committer | pfg <pfg@FreeBSD.org> | 2013-07-09 14:23:00 +0000 |
commit | 5a396d8c5b8d8b793f2c2c30756c6b6a6e8629dd (patch) | |
tree | 82c56580791787615b2f53ef2b601dbe9edde0fd /sys/fs/ext2fs | |
parent | 70e5ada2a087f6f8f24e0ec38331ae35400dad28 (diff) | |
download | FreeBSD-src-5a396d8c5b8d8b793f2c2c30756c6b6a6e8629dd.zip FreeBSD-src-5a396d8c5b8d8b793f2c2c30756c6b6a6e8629dd.tar.gz |
Reinstate the assertion from r253045.
UFS r232732 reverted the change as the real problem was to be fixed
at the syscall level.
Reported by: bde
Diffstat (limited to 'sys/fs/ext2fs')
-rw-r--r-- | sys/fs/ext2fs/ext2_vnops.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/fs/ext2fs/ext2_vnops.c b/sys/fs/ext2fs/ext2_vnops.c index bf1253e..0076754 100644 --- a/sys/fs/ext2fs/ext2_vnops.c +++ b/sys/fs/ext2fs/ext2_vnops.c @@ -1598,11 +1598,11 @@ ext2_read(struct vop_read_args *ap) } else if (vp->v_type != VREG && vp->v_type != VDIR) panic("%s: type %d", "ext2_read", vp->v_type); #endif - if (uio->uio_resid < 0 || uio->uio_offset < 0) - return (EINVAL); orig_resid = uio->uio_resid; + KASSERT(orig_resid >= 0, ("ext2_read: uio->uio_resid < 0")); if (orig_resid == 0) return (0); + KASSERT(uio->uio_offset >= 0, ("ext2_read: uio->uio_offset < 0")); fs = ip->i_e2fs; if (uio->uio_offset < ip->i_size && uio->uio_offset >= fs->e2fs_maxfilesize) |