Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys/ufs/lfs
Module Name: src
Committed By: dholland
Date: Sun Aug 2 18:18:46 UTC 2015
Modified Files:
src/sys/ufs/lfs: lfs.h lfs_accessors.h lfs_balloc.c lfs_segment.c
lfs_vfsops.c ulfs_bmap.c
Log Message:
Pass the fs object to LFS_MAX_DADDR so it can check lfs_is64.
Remove some hackish intentional 64->32 truncations next to the checks
using LFS_MAX_DADDR, and tackle the problem they handled in bmap
instead.
The problem: the magic block pointer value UNWRITTEN has magic value
-2, and if it's not handled specifically, uint32 -> uint64 promotion
turns it into 4294967294, which then causes consternation and
monkeyhouse downstream.
What's here is still kind of a hack, but it's a step forward.
To generate a diff of this commit:
cvs rdiff -u -r1.171 -r1.172 src/sys/ufs/lfs/lfs.h
cvs rdiff -u -r1.7 -r1.8 src/sys/ufs/lfs/lfs_accessors.h
cvs rdiff -u -r1.85 -r1.86 src/sys/ufs/lfs/lfs_balloc.c
cvs rdiff -u -r1.250 -r1.251 src/sys/ufs/lfs/lfs_segment.c
cvs rdiff -u -r1.333 -r1.334 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -u -r1.5 -r1.6 src/sys/ufs/lfs/ulfs_bmap.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index