segment size from block size).
newfs_lfs now reads the disklabel to find segment, block, and fragment
sizes. Because reading this info from the wrong fs type could result in
very poor fs layout (e.g. ffs has "16" where the segshift would go,
resulting in 512-*megabyte* segments for 8K blocks), newfs_lfs refuses
to create a filesystem on a partition not labeled "4.4LFS".
Man pages for newfs_lfs updated to reflect this change.
comments, to resolve PR 8189. This makes the documentation for these
fields consistent. Not that it matters - a grep of syssrc shows that
these fields aren't actually used for anything and should probably be
GC'd.
field.
According to disklabel.h, its LFS semantics are "segment shift" (log2(segment
size)), but in the code it is used nowhere, and there are even plans to
allow non-poweroftwo segment sizes, so it won't ever work.
While at this, simplify the disktab-like output routine... here, currently,
BSDFFS, BSDLFS, EX2FS and ADOS do the same, so don't duplicate the code.
wasn't adding a "su" entry, so when the disktab was read, the sectors per
unit was initialized to "nc"*"sc" which was wrong.
Fixes PR/7446 reported by Matthias Buelow <mkb@altair.mayn.de>.
-fix overflow conditions (PR bin/5534, Zdenek Salvet <salvet@ics.muni.cz>)
(+ one more: can VAX SMD drives be >4G?)
-fix output of "*" at odd end cylinder number (not odd size)
-break some lines >80 cols
checksums are calculated paying attention to the fact that the way
the checksum works a sectors filled with a single byte value will
always checksum correctly.
of the old boot area so that 'disklabel -r -w' won't clobber anything,
be sure to seek to the offset of the boot area (like readlabel() does).
Otherwise, if the machine has code which looks up machine-dependent label
bits, the offset read from will be incorrect, and disklabel will end up
secretly replacing the boot area with other data (which probably doesn't
look like a boot block). The only port this currently affects is
NetBSD/arm32, because it's the only one of the three ports that use
NUMBOOT > 0 that has MD label grovelling code.
Correct read of formatted file (used with -e or -R) so that fstype with
spaces will work. Also enlarge the fstype field by 2 chars so that
"Linux Ext2" will not be truncated.
Mostly, when someone specifies a partition entry like:
c: 1295850 0
or
g: 1295850 0 4.2BSD
disklabel would dump core. Now it generates a warning like it should
in the first case and complains about too few fields in the second.
Perhaps I should just default to unused in the first case, but this prevents
core dumps. (pr bin/2659)