summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorgluk <gluk@openbsd.org>2001-04-13 02:39:04 +0000
committergluk <gluk@openbsd.org>2001-04-13 02:39:04 +0000
commitb2e9ad3d12a4b4e2be50134546e10284f5435570 (patch)
tree025e1171961b7706f72d5536d02d70b821778c05 /lib
parentMake PROCFS compile again on non-UVM systems, deraadt@ ok (diff)
downloadwireguard-openbsd-b2e9ad3d12a4b4e2be50134546e10284f5435570.tar.xz
wireguard-openbsd-b2e9ad3d12a4b4e2be50134546e10284f5435570.zip
Fix overflow in superblock. From FreeBSD.
FreeBSD's log: > The ffs superblock includes a 128-byte region for use by temporary > in-core pointers to summary information. An array in this region > (fs_csp) could overflow on filesystems with a very large number of > cylinder groups (~16000 on i386 with 8k blocks). When this happens, > other fields in the superblock get corrupted, and fsck refuses to > check the filesystem. > > Solve this problem by replacing the fs_csp array in 'struct fs' > with a single pointer, and add padding to keep the length of the > 128-byte region fixed. Update the kernel and userland utilities > to use just this single pointer. > > With this change, the kernel no longer makes use of the superblock > fields 'fs_csshift' and 'fs_csmask'. Add a comment to newfs/mkfs.c > to indicate that these fields must be calculated for compatibility > with older kernels. art@ ok.
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions