lukem e3ba61f9f3 Incorporate fix by iedowse @ FreeBSD to allow disks with large numbers of
cylinder groups to work correctly, with minor modifications by me to work
with our FFS_EI code.  From the FreeBSD commit message:

	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.

	Reviewed by:    mckusick
2001-09-02 01:58:30 +00:00
..
2001-05-30 11:40:35 +00:00
2001-08-20 12:20:01 +00:00
2001-07-18 16:50:27 +00:00
2001-05-30 11:40:35 +00:00
2001-08-31 04:56:26 +00:00
2001-08-24 10:24:45 +00:00
2001-08-20 12:00:46 +00:00
2001-08-20 12:00:46 +00:00
2001-08-20 12:20:01 +00:00
2001-07-08 16:14:22 +00:00
2001-06-19 13:45:52 +00:00
2001-08-26 02:48:12 +00:00