Commit Graph

3720 Commits

Author SHA1 Message Date
Greg Lehey
b2cf87ecc1 vinum_start: Call vinum_read with correct number of parameters. 2003-05-05 08:33:36 +00:00
Greg Lehey
3a508bbd0a vinum_readpol: Get this right.
Submitted by:	Allan Saddi <allan@saddi.com>

vinum_read: White space cleanup.
2003-05-05 05:27:19 +00:00
Greg Lehey
48f14420c5 Finally implement read policies. The previous "implementation" didn't
work because it referred to plexes which were almost invariably when
referred to.  Instead, deprecate the "prefer" keyword for volumes
(though it's still there for the moment) and add a keyword "preferred"
to the plex definition.  The relationship is like this:

Old:

  vol foo ... prefer foo.p3

New:

  plex foo.p3 volume foo preferred

printconfig: Print out the "preferred" keyword for plexes where
	     appropriate.

	     Still print out "prefer" for volumes.  The kernel module
	     continues to accept this version, but it's probably not
	     going to live much longer.
2003-05-05 05:25:49 +00:00
Poul-Henning Kamp
5d853216d2 Add transparent handling of mbroffset for backwards compatibility. 2003-05-04 19:27:22 +00:00
Søren Schmidt
0a2b02fe0a Added more descriptive error outputs.
PR:	46096
2003-05-04 09:51:06 +00:00
Søren Schmidt
7ed6898c2f On getting status print the stripesize on RAID0's. 2003-05-04 09:28:43 +00:00
Murray Stokely
6f34d4fe78 Note that gated is a commercial routing product now, and remove
references to it's man page, which is almost never installed on a
FreeBSD system.  The information about using this command with gated
has been retained.  I have just made it clear that gated is not a part
of FreeBSD.

PR:		docs/51407
2003-05-04 06:13:25 +00:00
Greg Lehey
888c270436 Rewrite of startup code:
vinum_read:
  Accept 0 parameters, hand an empty string to the kernel if so.
  Use new ioctl VINUM_READCONFIG, not VINUM_CREATE, to read config.

vinum_start: When passed 0 parameters, drop the devstat kludge and
     call vinum_read instead.  It's no longer necessary to distinguish
     between "start" and "read" if no parameters are passed, and
     probably one of them should go away.
2003-05-04 05:13:17 +00:00
Ruslan Ermilov
08383fff66 Fix the misspelling of DPADD, then fix "make checkdpadd". 2003-05-03 19:49:05 +00:00
David E. O'Brien
c69284ca08 Use __FBSDID() to quiet GCC 3.3 warnings. 2003-05-03 18:41:59 +00:00
Poul-Henning Kamp
57dfbec57b More axe-work:
Hide all the historical fields of the label, unless people ask for them with -A,
set them to intelligently chosen defaults otherwise.

Distill the manual page to remove inaccuracies, misundertandings and obsolete
information.  It can probably still be done better but now at least it is
not misinforming people.
2003-05-03 09:58:20 +00:00
Poul-Henning Kamp
d2fe97c728 Some minor remodelling with a large axe. 2003-05-03 09:02:27 +00:00
Poul-Henning Kamp
5daa806da0 Use new geom.ctl based OAM instead of ioctls.
Various cleanup.
2003-05-03 08:04:24 +00:00
Poul-Henning Kamp
204ae37859 bsd_disklabel_le_dec() takes an extra argument now. 2003-05-02 22:46:44 +00:00
Poul-Henning Kamp
dfbc3f0c86 Vastly simplify architecture handling: Use properties of label as
recorded in global variables, rather than checks on the architecture.

Drop horribly code to handle MBR/PC98's embedded in the BSD label area.
If you need to have an MBR or PC98 on your disk, you should not overlap
it with a BSDLABEL, if you don't need it, this code is nothing but trouble.
2003-05-02 20:14:48 +00:00
Poul-Henning Kamp
7838fd0ebe Default the location to the compiled for architecture if no -m arg specified. 2003-05-02 20:02:11 +00:00
Poul-Henning Kamp
c80f9755bb Add three global variables which contain the location, size and a flag
for the alpha checksum, and set them depending on the specified architecture

Don't look for disklabels every 16 bytes, look the only place they should
be for the current architecture.

Always read the label from the raw disk and decode it into struct
disklabel rather than trust a cast from random addresses.

When writing to the raw disk, encode the label properly.
2003-05-02 19:58:08 +00:00
Poul-Henning Kamp
643c62af8f Pull in geom_bsd_enc.c from sys/geom to encode and decode our labels. 2003-05-02 19:54:18 +00:00
Poul-Henning Kamp
607f853af2 Remove the well-intentioned, but ill thought out check which prevents us
from dd(1)'ing the boot code off one drive and have bsdlabel write it
on another.
2003-05-02 19:14:38 +00:00
Poul-Henning Kamp
798b27f1f2 Update the test-script based on the sunlabel version, but put a for-loop
in there to run over the various architectures.
2003-05-02 19:12:20 +00:00
Warner Losh
79f92e2597 sysctlbyname takes a size_t as its 5th argument, not a pointer.
However, since NULL was used, and this is C++, this error went
undetected until g++ 3.3 somehow managed to whine about it.

Reported by: obrien
2003-05-02 17:38:08 +00:00
Søren Schmidt
0a124c3704 Add "addspare" functionality. 2003-05-02 12:42:31 +00:00
David E. O'Brien
560bb4f8b6 bufpos is used in size_t contexts, so make it one. 2003-05-02 07:08:52 +00:00
David E. O'Brien
8e7d2436a1 Set WARNS=1. RESOLUTION_MAX macro has major signed/unsigned issues. 2003-05-02 06:56:32 +00:00
David E. O'Brien
bf2783a016 Use __FBSDID. 2003-05-02 06:49:10 +00:00
David E. O'Brien
eb56700bbb Use size_t type vars in sizeof contexts. 2003-05-02 06:46:24 +00:00
Ruslan Ermilov
44b81f0f89 Removed all vestiges of KerberosIV. 2003-05-01 21:18:36 +00:00
Ruslan Ermilov
cbfe6d117c Style. 2003-05-01 21:10:37 +00:00
Ruslan Ermilov
fd2f6a9b16 Fixed the MLINKS assignment style. 2003-05-01 20:35:30 +00:00
Mark Murray
8edde085dd De-Kerberise (KerberosIV). KerberosIV is no longer present, and
remote backups can still be done with Kerberos authentication using
SSH and Kerberos 5.
2003-05-01 20:09:58 +00:00
Yoshihiro Takahashi
f67666fcb7 Oops, DIOCGPC98 should be DIOCSPC98. 2003-05-01 14:30:59 +00:00
Yoshihiro Takahashi
4a505cd557 Merged from src/sbin/fdisk/Makefile revision 1.10. 2003-05-01 13:53:41 +00:00
Yoshihiro Takahashi
7513940d0f Merged from src/sbin/fdisk/fdisk.c revision 1.69. 2003-05-01 13:27:11 +00:00
Greg Lehey
e4532a7511 Remove VINUMDEBUG. vinum(8) always compiles with VINUMDEBUG to be able
to cope with kernel modules with VINUMDEBUG.
2003-05-01 07:19:29 +00:00
Greg Lehey
c44e61c6cb Add the #includes previously in individual .c files.
Change name of history file to History to avoid name conflicts.
2003-05-01 01:40:16 +00:00
Greg Lehey
d82c72d742 Move most #includes to vext.h.
Change name of history file to History to avoid name conflicts.

Don't try to make devices unless devfs has been removed.

Don't accept resetconfig command from a file.

Abused by:  Jens Schweikhardt <schweikh@schweikhardt.net>

Remove dead code (#if 0)

vinum_mirror: Don't try to create mirrors with 0 drives.

Found by: mismatch between enum kw in two different files.
2003-05-01 01:39:49 +00:00
Greg Lehey
807b7ff353 Move most #includes to vext.h.
Change name of history file to History to avoid name conflicts.

Rewrite minor number decoding.  Now we have only three types of
object: subdisks, plexes and volumes.  The encoding for plexes and
subdisks no longer reflects the object to which they belong.  The
super devices are high-order volume numbers.  This gives vastly more
potential volumes (4 million instead of 256).

Don't try to chown directories if they haven't been created.
2003-05-01 01:39:42 +00:00
Greg Lehey
3b967ba7e9 Move most #includes to vext.h.
vinum_info: Use increasing verbosity to show time spent in disk
	    driver.

Correct a comment.
2003-05-01 01:38:55 +00:00
Hartmut Brandt
2b75e097f1 Add media types and options for ATM. While on most ATM cards media cannot
be changed, it is very convenient to be able to toggle SDH/Sonet,
idle/unassigned cells and scrambled mode and to see the carrier
state.

Reviewed by:	-arch (if_media.h definitions)
2003-04-29 17:23:23 +00:00
Sam Leffler
e519b1a5ee document mode directive 2003-04-28 16:47:40 +00:00
Sam Leffler
4e61f6f1f6 add a "mode" directive to specify the operating mode for multi-mode devices;
this is mostly intended for use with multi-mode 802.11 devices that support
some combination of 11a, 11b, and 11g
2003-04-28 16:37:38 +00:00
Tim J. Robbins
7a22a933fa This file does not seem to serve any purpose. It has never been hooked up
to the build, and performs a subset of the functionality that the getconf(1)
utility performs.
2003-04-28 00:38:48 +00:00
Jake Burkholder
ea3de363aa Fix for dynamic linking.
Submitted by:	Alex Deiter <tiamat@komi.mts.ru>
2003-04-27 21:24:05 +00:00
Doug Barton
1b6c6f4aae Add .Xr's to mdmfs(8).
Submitted by:	Scot W. Hetzel <hetzels@westbend.net>
2003-04-27 01:46:56 +00:00
Doug Barton
f72709f6ae Also MLINK the man page for mount_mfs. 2003-04-27 01:40:45 +00:00
Doug Barton
09fe58a9a5 Install a mount_mfs symlink so that you can specify something like this
in /etc/fstab to get a memory disk:

md                      /tmp            mfs rw,-s8m,noatime     2       2

Back when mdmfs was created, there was vague discussion about doing this, but
it never materialized.

Reminded by:	Ralf S. Engelschall <rse@engelschall.com>
2003-04-27 01:18:36 +00:00
Warner Losh
6aeeca8edf Create a new C++ header file called devd.hh which has all the class
definitions in it.  Begin to document the classes that we use, and how
they interrelate (using comments that I can use with doxygen to
automatically generate docs with).
2003-04-26 20:59:04 +00:00
Warner Losh
66ff6821dd Update to use is_id_char() in the last patch. I should have done this
before the last commit.
2003-04-26 20:25:40 +00:00
Warner Losh
6cabd675ee Make better use of the string type when parsing things. This switches
expand one from using a fixed buffer to using a string which
dynamically allocates these things.

Submitted by: green@ (against an earlier version of devd)
Ignored for too long by: imp
2003-04-26 19:44:45 +00:00
Jens Schweikhardt
6ded053322 Fix typos in comments; some style(9) fixes; no code changes.
PR:	misc/50979
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
2003-04-26 15:22:29 +00:00
Warner Losh
812f53a7b5 Change default to be 'process all events before calling daemon.'
Also, put a small work around into devd to prevent a hang on boot this
would cause because select used to return 2 rather than 0 for no
evetnts due to a bug I fixed a few days ago in subr_bus.c.  I'll
remove this workaround May 7th.  You have until then to upgrade your
kernel if you want to run a new devd with an older kernel.
2003-04-25 02:13:42 +00:00
Juli Mallett
8235d79a86 Back out previous delta to fix fsck on filesystems without an fstab entry,
where we want to take the disklabel filesystem type of "4.2BSD" and use
fsck_4.2bsd on those filesystems.

Add a comment about why the code is there, now that we know:

         * XXX This is a kludge to make automatic filesystem type guessing
         * from the disklabel work for "4.2BSD" filesystems.  It does a
         * very limited subset of transliteration to a normalised form of
         * filesystem name, and we do not seem to enforce a filesystem
         * name character set.
2003-04-25 01:12:35 +00:00
Johan Karlsson
7f10745771 style(9): use NULL when assigning/comparing a char *,
consitently compare fileid with 0 using == and !=.

Reviewed by:	silence on @audit
2003-04-23 20:33:57 +00:00
Johan Karlsson
7d2101965f Make this WARNS=5 clean by adding () in 'if (a || (b && c))'.
Look at by:	sebastian.ssmoller@web.de on audit@
2003-04-23 20:26:21 +00:00
Johan Karlsson
eb3beef5ad Make this WARNS=5 clean by using %j and (uintmax_t).
Look at by:	sebastian.ssmoller@web.de on audit@
2003-04-23 20:24:13 +00:00
Johan Karlsson
b107cd7718 These are WARNS=5 clean, mark them as such to keep them that way.
Look at by:	sebastian.ssmoller@web.de on audit@
2003-04-23 20:22:33 +00:00
Poul-Henning Kamp
6fd54d593e Add testcases to ensure that overwriting bootcode does not trash label. 2003-04-23 08:25:44 +00:00
Poul-Henning Kamp
97b902efd2 If we cannot open the parent device for writing, use GEOM::CONFIG_GEOM
requests to write label and bootcode.

The -r argument is ignored (with a warning).

With a lot of help from:	jake
2003-04-23 08:25:20 +00:00
Poul-Henning Kamp
fd19a46265 Do not link sunlabel to disklabel. 2003-04-23 06:37:57 +00:00
Poul-Henning Kamp
48c0057670 Add "-r" when we initialize the label first time.
Add two more tests.
2003-04-22 21:04:48 +00:00
Johan Karlsson
c0bb08c5ed Make this WARNS=2 clean by using %j and (uintmax_t).
Reviewed by:	tjr@ on audit@
Approved by:	silence from sos@
2003-04-22 19:57:46 +00:00
Poul-Henning Kamp
6ad44047ca Use explicit encoding/decoding funtions for sunlabel data structures.
Use #defines for various magic numbers.

Attach test-case to makefile.

Reviewed by:    jake
2003-04-21 20:38:15 +00:00
Poul-Henning Kamp
3d9c928705 Add minimal regression test for hotspot handling of the sunlabel. 2003-04-21 20:16:07 +00:00
Warner Losh
01ee1d1668 Kill debug printf that crept in my last commit 2003-04-21 17:25:39 +00:00
Warner Losh
5a882d775d Implement a two new flags, and change the meaning of another one.
'd': now means don't do daemon().
'D': Debug
'n': Don't wait to process all pending events before calling daemon.

In the past, devd would call daemon immediately.  However, this causes
a race.  If anything in the boot process depends on configuring the
devices configured by devd, maybe they would be configured in time,
maybe not.  Now we don't call daemon until all pending events are
processed, unless -n is specified.

# -n is actually the default for a while due to the select(2) bug in devctl
# that I just fixed to give people a chance to upgrade.
2003-04-21 06:26:08 +00:00
Warner Losh
9c1808986c Put an anti-foot-shooting measure in place. Set hw.bus.devctl_disable
to 0 when we startup.  Print a warning in this case.  This allows
people that are playing with devd by hand to have something happen.
Otherwise, it appears that devd isn't working because /dev/devctl is
disabled and producing no events.

Suggested by: peter on irc a long time ago.
2003-04-21 04:30:12 +00:00
Warner Losh
b1ee04b18e o Skip white space between variables better. This makes
'a="b" c="d" at loc=1 on busN' properly set 'c' and process the rest of
  the stirng.  Before it would ignore everything after variable 'a'.
o Parse nomatch and other events differently.  They are more different
  than the code allowed for, so we weren't properly parsing nomatch
  events.  It appears this fixes some of the demand loading issues that
  I was having with devd.

Noticed by: Gary Palmer
2003-04-21 04:00:01 +00:00
Warner Losh
3f2660bee3 devd.conf already has the examples in the todo list 2003-04-21 03:29:53 +00:00
Christian Brueffer
d4cb71fc53 Remove reference to diskpart(8)
PR:		51193
Submitted by:	Yonatan@xpert.com
2003-04-20 19:16:21 +00:00
Robert Watson
b459937e0c Throw the switch--change to UFS2 as our default file system format for
FreeBSD 5.1-RELEASE and later:

- newfs(8) will now create UFS2 file systems unless UFS1 is specifically
  requested (-O1).  To do this, I just twiddled the Oflag default.

- sysinstall(8) will now select UFS2 as the default layout for new
  file systems unless specifically requested (use '1' and '2' to change
  the file system layout in the disk labeler).  To do this, I inverted
  the ufs2 flag into a ufs1 flag, since ufs2 is now the default and
  ufs1 is the edge case.  There's a slight semantic change in the
  key behavior: '2' no longer toggles, it changes the selection to UFS2.

This is very similar to a patch David O'Brien sent me at one point, and
that I couldn't find.

Approved by:	re (telecon)
Reviewed by:	mckusick, phk, bmah
2003-04-20 14:08:05 +00:00
Poul-Henning Kamp
d7960ce5a2 Add the beginning of a regression test.
So far it checks the overwrites of the BSD label inband (ie: dd
if=/dev/ad0a of=/dev/ad2a).

This excercises the geom::slice::hotspot code.
2003-04-18 22:20:46 +00:00
Poul-Henning Kamp
008f0e2abb Solve printf/cast issues to make this compile in i386 as well. 2003-04-18 20:27:16 +00:00
Poul-Henning Kamp
2c60b6689a First scrub of s/disklabel/bsdlabel/
bsdlabel.5 deliberately exempted, its contents looks less than useful.
2003-04-18 19:44:12 +00:00
Tom Rhodes
c3da0eb49a Quick grammar fix. 2003-04-17 17:36:31 +00:00
Ruslan Ermilov
1becd59e62 There is an undocument feature that ``route -vnd flush'' prints
a nice dump of the entire routing table.  Allow non-root users
to see it too.
2003-04-16 12:06:53 +00:00
Ruslan Ermilov
5ea3e23965 Normalize, fix ``make checkdpadd''. 2003-04-16 11:54:11 +00:00
Munechika SUMIKAWA
0fe265077e Use NI_xxx macros.
Obtained from:	KAME
MFC after:	1 week
2003-04-16 09:53:29 +00:00
Jake Burkholder
5ee414278f Hardlink sunlabel to disklabel so make release is happy. (This only affects
sparc64, where bsd^H^H^Hdisklabel isn't built.)
2003-04-15 23:49:31 +00:00
Jake Burkholder
d2f46c9060 - Use read(2) to get the existing sunlabel on a disk, instead of parsing
kern.geom.conftxt, which md disks don't show up in.  If the magic and
  the checksum are right assume its a valid sunlabel, otherwise use the
  DIOC ioctls to get the disk parameters and whip up a label out of thin
  air.
- Don't just silently create or correct invalid c partitions, warn about
  invalid ones in label proto files.
- Split checksumming into a function since we do it a couple times.  Also
  don't include the sl_cksum field in the checksum, which avoids needing
  to clear it first.

This is makes sunlabel a suitable replacement for disklabel in make release.
2003-04-15 23:46:19 +00:00
Matthew N. Dodd
71d66ceb2c Don't abuse module names to facilitate ifconfig module loading;
such abuse isn't really needed.  (And if we do need type information
associated with a module then we should make it explicit and not
use hacks.)
2003-04-15 06:25:58 +00:00
Poul-Henning Kamp
ddc6ffdccf Avoid off_t -> integer overflow when sorting the locksector addresses. 2003-04-14 09:36:39 +00:00
Maxim Konovalov
29dccd6ae1 o Skip timestamp part when checking payload.
PR:		bin/50909
Submitted by:	Barney Wolff <barney@lab.databus.com>
2003-04-14 08:34:14 +00:00
Poul-Henning Kamp
1a03d6d57a Use symbolic constants from <sys/diskmbr.h> instead of local constants.
Always set the magic sequence when we write, rather than trusting the
previously read boot code to do so.

Use explicit encoding/decoding of little endian disk image.

Remove a comment which was OBE.

Change the test vector for "fdisk -I" to reflect that there is a magic
sequence in the result now.

Add test case for "fdisk" which reads the image back.

At least for the two test-cases this program now gives the same result
on sparc64 as on i386.  The lack of an installed /boot/mbr on sparc64
raises an (un)interesting question.
2003-04-13 21:57:08 +00:00
Poul-Henning Kamp
9657a0c35e Pull in the encoding/decoding functions for struct dos_partition.
Add a very simple regression test for "fdisk -I".
2003-04-13 21:34:16 +00:00
Poul-Henning Kamp
4e8bfe1482 Add a couple of undocumented test options to MD(4) to aid in regression
testting of GEOM.
2003-04-09 11:59:29 +00:00
Matthew N. Dodd
6e3bc9dad6 Bump the date for recent commits. 2003-04-07 22:58:35 +00:00
Matthew N. Dodd
564b641ef9 Clarify the behavior of PATH_FSTAB with regard to 'tainted' execution.
Requested by:	 ru
2003-04-07 14:21:14 +00:00
Matthew N. Dodd
ef258dd967 Implement the '-F' option for mount & umount which allows the user to
specify an alternate fstab file.
2003-04-07 12:56:01 +00:00
Matthew N. Dodd
47e9b3ea64 Deal with a case where the returned packed was smaller than the
transmitted packet (because the remote host stripped off our icmp_data).

Submitted by:	 Maxim Konovalov <maxim@macomnet.ru>
2003-04-07 12:05:50 +00:00
Matthew N. Dodd
5c514aeee8 Quiet warning. 2003-04-07 11:44:48 +00:00
Matthew N. Dodd
a3165d16af Avoid a name conflict with future functionality:
getfstab() -> dump_getfstab()
2003-04-07 11:34:12 +00:00
Darren Reed
0533695204 Change the default syslog facility from LOG_LOCAL0 to LOG_SECURITY after
discussion on security@freebsd.org.
2003-04-05 10:42:38 +00:00
Poul-Henning Kamp
5b03e4b6a1 Output machdep.guessed_bootdev as an integer rather than try to format
it according to ancient and obsolete rules.

This removes one more user of <sys/diskslice.h>
2003-04-03 21:41:14 +00:00
Poul-Henning Kamp
1e01677906 Don't pull in geom_enc.c any more. 2003-04-03 12:36:56 +00:00
Robert Watson
6ab0d6c220 When kill(-1) returns ESRCH, it could be because the current process
doesn't have a process group, which can occur if you're working with
a custom init that doesn't set up a full tty context.  Rather than
refusing to reboot, ignore ESRCH from the kill attempt in reboot(8).
2003-04-02 22:13:56 +00:00
Matthew N. Dodd
2c56e246fa Back out support for RFC3514.
RFC3514 poses an unacceptale risk to compliant systems.
2003-04-02 20:14:44 +00:00
Maxim Konovalov
33e1dc7738 IP_EVIL -> IP_EF 2003-04-02 14:52:21 +00:00
Yaroslav Tykhiy
252bcf459d Give clearer diagnostics on some cases of invalid
combinations of mdconfig(8) command-line arguments.

Make mdconfig(8) accept "-a -f file -o options"
equally with "-a -f file" (assuming "-t vnode".)
2003-04-01 15:23:55 +00:00
Yaroslav Tykhiy
29f3f095a6 Don't die of SIGSEGV on a missing fstype field
in a saved disklabel file.

MFC after:	1 week
2003-04-01 14:44:53 +00:00
Ruslan Ermilov
887c67148e This can't obviously be cleaner than system headers. 2003-04-01 11:11:38 +00:00