Commit Graph

217 Commits

Author SHA1 Message Date
Ulrich Spörlein
a58711550d Widen fields that display partition offset/length.
This makes partitions between 50GiB and 2TiB (16TiB for 4k drives) print
correctly aligned.

While here, fix type of secsize. g_sectorsize() returns ssize_t, don't
store this in an unsigned var. Bump WARNS to 6.

MFC after:	4 weeks
2011-03-10 08:24:33 +00:00
Ulrich Spörlein
4c8dfc4aff Remove dead code in bsdlabel depending on __alpha__ 2011-03-10 08:24:21 +00:00
Ulrich Spörlein
15a6186cd1 Remove bsdlabel test-script that was full of broken assumptions.
- the default label now includes an a: partition by default
- the c: partition is no longer exported via devfs
- writing of the labels usually works in all cases, though the script
  assumes half of them have to fail
2011-03-10 08:24:10 +00:00
Ulrich Spörlein
1cc06c674e Remove bsdlabel.5, which hasn't been installed in over 7 years
and contains little more than an out-dated copy of <sys/disklabel.h>
2011-03-10 08:23:58 +00:00
Kevin Lo
a2299ad8e5 Closing file descriptors when it's done 2010-12-01 08:07:32 +00:00
Rebecca Cran
1161d4202c Fix some more warnings found by clang. 2010-11-22 20:10:48 +00:00
Jaakko Heinonen
e45d37b2e9 Don't attempt to write label with GEOM_BSD based method if the class is
not available. This improves error reporting when bsdlabel(8) is unable
to open a device for writing. If GEOM_BSD was unavailable, only a rather
obscure error message "Class not found" was printed.

PR:		bin/58390
Reviewed by:	ae
Discussed with:	marcel
MFC after:	1 month
2010-08-27 11:08:11 +00:00
Warner Losh
25faff346c MFtbemd:
Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want
to test of all the CPUs of a given family conform.
2010-08-23 22:24:11 +00:00
Jaakko Heinonen
fb26ece72c - Check that strtoul(3) succeeds to convert the entire string in a few
places.
- In getasciilabel(), set the disk type only when a valid type is given.

PR:		bin/86765
MFC after:	2 weeks
2010-08-15 17:49:41 +00:00
Jaakko Heinonen
049a97931c - Don't assign the return value from read(2) to a variable of type
int.
- Use errx(3) instead of err(3) to print the error message on short
  reads in readlabel(). errno won't be set on short reads which can
  easily occur here due to the fixed size read request.

PR:		144307
Reviewed by:	bde
2010-06-30 18:34:45 +00:00
Kevin Lo
73d6722d27 Use setresuid/setresgid to drop privileges 2010-05-16 08:03:24 +00:00
Ruslan Ermilov
106d839190 Switch the default WARNS level for sbin/ to 6.
Submitted by:	Ulrich Spörlein
2009-10-19 16:00:24 +00:00
Marcel Moolenaar
eb0ea23e83 Remove the dependency on the kernel -- in particular the gctl request to
the GEOM_BSD class -- to translate the absolute offsets in the label to
relative ones. This makes bslabel(8) work correctly with GEOM_PART and
also when the BSD label is nested under arbitrary partitioning schemes.

Inspired by:	Eygene Ryabinkin <rea-fbsd@codelabs.ru>
Approved by:	re (kib)
2009-08-19 16:29:20 +00:00
Maxim Konovalov
69573e862d o One more s/gpt/gpart/. 2008-11-05 09:28:30 +00:00
Maxim Konovalov
7922d6f987 o Replace Xr to gpt(8) which is gone by gpart(8). 2008-11-05 09:27:13 +00:00
Ulf Lilleengen
9d8ce07800 - A call to close(2) might overwrite errno and thus give a wrong error message
on g_providername failure.

Suggested by:	pjd
Approved by:	pjd (mentor)
2008-09-30 11:46:14 +00:00
Ulf Lilleengen
bd5add5884 - Improve error message given on g_providername call failure.
- While there, make error messages consistent with the rest.

Approved by:	kib (mentor)
2008-09-30 07:18:49 +00:00
Ruslan Ermilov
0a4b670e07 Add missing library dependencies.
PR:		bin/127573
Submitted by:	Eygene Ryabinkin
2008-09-23 13:12:51 +00:00
Ulf Lilleengen
7a4b0bb24a - Make bsdlabel use libgeom to determine provider name, device path, the media
size and the sector size.
- Fix a bug where bsdlabel would try to read a regular file using the geom_bsd
  class.

Quick review by:	phk
Approved by:	pjd (mentor)
2008-09-18 14:04:02 +00:00
Craig Rodrigues
67361fdf2d Remove comment about "-r" flag from readlabel. "-r" is a no-op.
The is comment is left over from the old disklabel command.

Reviewed by:	phk
2008-03-23 03:01:10 +00:00
Marcel Moolenaar
d5718812ea Allow bsdlabel to operate on labels that have at most 26 partitions
by virtue of there not being any (lower-case) letters avaliable for
more partitions.
2007-12-09 22:58:49 +00:00
Remko Lodder
9b750c1c8e Remove redundant whitespace.
Noticed by:	brueffer
2007-12-08 23:41:13 +00:00
Remko Lodder
eff1c096ed Attempt to describe the ''auto'' type a bit better in the default
section (if nothing had been specified, or if the auto type had
been specified, a default layout is used).

PR:		docs/116047
Submitted by:	Ian Smith <smithi at nimnet dot asn dot au>
		Minor modifications by me.
2007-12-08 19:57:22 +00:00
Ruslan Ermilov
f9530cf087 - Fix markup.
- Somewhat improve wording.

- Change the layout of the EXAMPLES section so that descriptions
  come before example, as in most other manpages.

- Fix a bad example that edits a label using a `c' partition.
2006-12-29 16:28:38 +00:00
Maxim Konovalov
f72bbf974b o '-s' flag was killed in rev. 1.75. Clean getopt(3).
PR:		bin/104616
Submitted by:	Oliver Fromme
MFC after:	1 week
2006-10-20 13:10:27 +00:00
Ruslan Ermilov
476bfbd7c7 - Don't mention (wrong) defaults for FFS file system parameters,
replace them with references to newfs(8) which documents them.

- Remove mentions of LFS support for which was retired in 1998.

- Regenerate an example output.

PR:		docs/84913
MFC after:	3 days
2006-10-13 15:44:29 +00:00
Ruslan Ermilov
6b0db4ab37 Fix utility's short description.
PR:		docs/84467
Submitted by:	Gary W. Swearingen
MFC after:	3 days
2006-10-12 20:29:20 +00:00
Ruslan Ermilov
8266d47670 Markup fixes. 2006-09-18 11:55:10 +00:00
Ruslan Ermilov
2b46c64c9c Remove alpha left-overs. 2006-08-22 08:03:01 +00:00
Pawel Jakub Dawidek
689686bf2f Explain why the first partition should start at offset 16.
Requested by:	hrs
2006-03-08 14:17:26 +00:00
Pawel Jakub Dawidek
bd92a261fe Fix evil examples - first partition should start at offset 16.
MFC after:	3 days
2006-03-04 12:09:50 +00:00
Ruslan Ermilov
4e9e907d63 -mdoc sweep. 2005-11-18 10:36:29 +00:00
Craig Rodrigues
1c47852f8a Clarify wording for -m flag.
PR:	docs/84704
2005-09-17 15:10:39 +00:00
Ian Dowse
3b89beb171 Attempt to improve the logic for automatically sizing partitions
to take into account the new default of starting the first partition
after the boot blocks instead of at sector 0. If you used automatic
sizing when the first partition did not start at 0, you would get
an error that the automatically sized partition extended beyond the
end of the disk.

Note that there are probably still many more complex cases where
automatic sizing and placement will not work (e.g. non-contiguous
or out of order partitions).
2005-08-14 22:46:50 +00:00
Ruslan Ermilov
214144704b Scheduled mdoc(7) sweep. 2005-01-10 16:17:34 +00:00
Ralf S. Engelschall
ccdd2fce3a Fix the derivation of the GEOM name from the specified device name by
complementing the existing special case of a not existing /dev prefix
with the recognition of an already existing /dev prefix.

This implicitly solves the following two issues related to working on
GEOM devices /dev/foo/bar (which have the GEOM provider name "foo/bar")
with the expected commands like "bsdlabel /dev/foo/bar":

1. the error "Geom not found" when trying to write or edit the BSD
   label (because previously the incorrect GEOM name "bar" instead of
   "foo/bar" was derived from "/dev/foo/bar").

2. the multiple times reported "magically introduced" partition offset
   of 63 blocks and the resulting errors like "partition extends past
   end of unit" and "partition c doesn't start at 0!".

   This implicitly resulted because bsdlabel(8) determines the "MBR
   offset" via GEOM and (intentionally) silently falls back to an offset
   of 0 if it could not be queried (which is the case if the name was
   incorrectly derived).

   Usually (at least on PCs) the offset for the first slice is 63 blocks
   and bsdlabel(8) automatically subtracts them from the absolute
   offsets in the read on-disk BSD label, resulting in the display of an
   effective offset of 0. If the GEOM query fails, the assumed offset of
   0 is subtracted and an incorrect effective offset of 63 is displayed
   and tried to be worked upon.

Reviewed by: pjd
MFC after: 1 week
2005-01-07 12:19:57 +00:00
Brooks Davis
86e0bd0dc0 The disk labels generated by bsdlabel can no address more than
0xffffffff sectors.  Document this limit and avoid installing bogus
labels on disks with more sectors.

Allowing the installation of labels addressing as much of the disk as
possiable may be a useful addition in some situations, but this was easy
to implement and should reduce confusion.

PR:		bin/71408
2004-09-09 07:46:53 +00:00
Dag-Erling Smørgrav
8180729228 The multiplier prefix is actually a multiplier suffix. 2004-08-09 14:43:50 +00:00
Dag-Erling Smørgrav
4c814dfc27 Use fallthrough to simplify the multiplier logic; optimistically add
support for the T multiplier; improve the error message for unrecognized
multipliers.
2004-08-08 23:14:44 +00:00
Dag-Erling Smørgrav
266e79978a Fix some whitespace issues, and move a curly brace out of an #ifdef to
avoid confusing auto-indenting editors.
2004-08-08 23:11:43 +00:00
Ruslan Ermilov
d04b5dfe6c Assorted markup, grammar, and spelling fixes. 2004-05-17 08:35:43 +00:00
Mark Murray
4c723140a4 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core, imp
2004-04-09 19:58:40 +00:00
Luigi Rizzo
7747c959fa Implement a '-f' flag to teach bsdlabel to work on files instead of
disk partitions.
2004-03-30 23:15:03 +00:00
John Baldwin
c8785325a6 When installing boot blocks into an Alpha BSD label, setup the location,
length, and flags fields at the end of the SRM boot sector so that SRM can
find the bootstrap code.  This fixes bsdlabel -m alpha to generate bootable
disklabels.

Reviewed by:	phk
2004-03-15 23:10:34 +00:00
Yoshihiro Takahashi
82a22cc1ed '-DPC98' is not needed. 2004-01-11 09:11:10 +00:00
Poul-Henning Kamp
427823d576 Only automatically create an 'a' partition when there is nothing
but a 'c' partition.
2003-10-18 19:32:35 +00:00
Ian Dowse
640c9cb297 Remove the hardcoded default block/frag/cpg values from bsdlabel
and the logic for setting them according to the partition size.
Instead, unspecified filesystem values are left at 0 so that newfs
will use its own defaults. It just caused confusion to have the
defaults duplicated in two different places.

Reviewed by:	phk
2003-10-05 19:40:02 +00:00
Ruslan Ermilov
743d5d518c mdoc(7): Properly mark C headers. 2003-09-10 19:24:35 +00:00
Ruslan Ermilov
fe08efe680 mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
Poul-Henning Kamp
d440887943 When we initialize a disk with a virgin label, create also an 'a'
partition which starts after the bootstrap area and fills the entire
disk.
2003-08-27 22:34:57 +00:00