summaryrefslogtreecommitdiffstats
path: root/sbin
Commit message (Collapse)AuthorAgeFilesLines
* MFgraid/head:mav2011-03-244-0/+368
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add new RAID GEOM class, that is going to replace ataraid(4) in supporting various BIOS-based software RAIDs. Unlike ataraid(4) this implementation does not depend on legacy ata(4) subsystem and can be used with any disk drivers, including new CAM-based ones (ahci(4), siis(4), mvs(4), ata(4) with `options ATA_CAM`). To make code more readable and extensible, this implementation follows modular design, including core part and two sets of modules, implementing support for different metadata formats and RAID levels. Support for such popular metadata formats is now implemented: Intel, JMicron, NVIDIA, Promise (also used by AMD/ATI) and SiliconImage. Such RAID levels are now supported: RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT. For any all of these RAID levels and metadata formats this class supports full cycle of volume operations: reading, writing, creation, deletion, disk removal and insertion, rebuilding, dirty shutdown detection and resynchronization, bad sector recovery, faulty disks tracking, hot-spare disks. For Intel and Promise formats there is support multiple volumes per disk set. Look graid(8) manual page for additional details. Co-authored by: imp Sponsored by: Cisco Systems, Inc. and iXsystems, Inc.
* MFgraid/head r217014:mav2011-03-242-42/+161
| | | | | | | | Make `geom XXX list` and `geom XXX status` outputs more consistent: Add -a options to print all geoms, not only ones with providers. Add -g option for `status` to report geom's names, not provider's. Make `status` by default report provider's status (if present), not geom's. Make `status` report consumer's statuses, not only "synchronized" field.
* It's possible to unmount multiple items at once, make it clear.ru2011-03-242-2/+2
|
* Fix SYNOPSIS.glebius2011-03-231-1/+1
|
* Don't create socketpair for connection forwarding between parent and secondary.pjd2011-03-232-20/+28
| | | | | | Secondary doesn't need to connect anywhere. MFC after: 1 week
* Add support for displaying newfs flags for SU+J and TRIM.jmallett2011-03-231-1/+5
|
* Add my copyright.pjd2011-03-222-0/+2
| | | | MFC after: 1 week
* Forgot to commit this as part of r219873.pjd2011-03-221-1/+1
| | | | MFC after: 1 week
* After synchronization is complete we should make primary counters betrociny2011-03-221-3/+3
| | | | | | | | | | | | | equal to secondary counters: primary_localcnt = secondary_remotecnt primary_remotecnt = secondary_localcnt Previously it was done wrong and split-brain was observed after primary had synchronized up-to-date data from secondary. Approved by: pjd (mentor) MFC after: 1 week
* For requests that are sent only to remote component use thetrociny2011-03-221-2/+7
| | | | | | error from remote. Approved by: pjd (mentor) MFC after: 1 week
* The proto API is a general purpose API, so don't use 'hast' in structures orpjd2011-03-227-118/+120
| | | | | | function names. It can now be used outside of HAST. MFC after: 1 week
* White space cleanups.pjd2011-03-227-18/+18
| | | | MFC after: 1 week
* When dropping privileges prefer capsicum over chroot+setgid+setuid.pjd2011-03-215-6/+19
| | | | | | | | | We can use capsicum for secondary worker processes and hastctl. When working as primary we drop privileges using chroot+setgid+setuid still as we need to send ioctl(2)s to ggate device, for which capsicum doesn't allow (yet). X-MFC after: capsicum is merged to stable/8
* Initialize localcnt on first write. This fixes assertion when we createpjd2011-03-211-2/+6
| | | | | | | resource, set role to primary, do no writes, then sent it to secondary and accept connection from primary. MFC after: 1 week
* Fix typo.pjd2011-03-211-1/+1
| | | | MFC after: 1 week
* Before handling any events on descriptors check signals so we can updatepjd2011-03-211-28/+43
| | | | | | | | | | | | | | our info about worker processes if any of them was terminated in the meantime. This fixes the problem with 'hastctl status' running from a hook called on split-brain: 1. Secondary calls a hooks and terminates. 2. Hook asks for resource status via 'hastctl status'. 3. The main hastd handles the status request by sending it to the secondary worker who is already dead, but because signals weren't checked yet he doesn't know that and we get EPIPE. MFC after: 1 week
* Bump date from previous commit.gjb2011-03-211-1/+1
|
* Remove stale comment. Yes, it is valid to set role back to init.pjd2011-03-211-1/+1
| | | | MFC after: 1 week
* Increase debug level of "Checking hooks." message.pjd2011-03-211-1/+1
| | | | MFC after: 1 week
* Be pedantic and free nvout before exiting.pjd2011-03-211-0/+1
| | | | MFC after: 1 week
* Detect situation where resource internal identifier differs.pjd2011-03-211-0/+13
| | | | | | | This means that both nodes have separately managed resources that don't have the same data. MFC after: 1 week
* Forgot to commit this as a part of r219818.pjd2011-03-211-1/+4
| | | | MFC after: 1 week
* In hast.conf we define the other node's address in 'remote' variable.pjd2011-03-2114-36/+124
| | | | | | | | | | | | | | | | | | This way we know how to connect to secondary node when we are primary. The same variable is used by the secondary node - it only accepts connections from the address stored in 'remote' variable. In cluster configurations it is common that each node has its individual IP address and there is one addtional shared IP address which is assigned to primary node. It seems it is possible that if the shared IP address is from the same network as the individual IP address it might be choosen by the kernel as a source address for connection with the secondary node. Such connection will be rejected by secondary, as it doesn't come from primary node individual IP. Add 'source' variable that allows to specify source IP address we want to bind to before connecting to the secondary node. MFC after: 1 week
* Log when we start hooks checking and when we execute a hook.pjd2011-03-211-0/+4
| | | | MFC after: 1 week
* Use snprlcat() instead of two strlcat(3)s.pjd2011-03-211-2/+3
| | | | MFC after: 1 week
* Add snprlcat() and vsnprlcat() - the functions I'm always missing.pjd2011-03-212-0/+27
| | | | | | | They work as a combination of snprintf(3) and strlcat(3) - the caller can append a string build based on the given format. MFC after: 1 week
* When creating connection on behalf of primary worker, set pjdlog prefixpjd2011-03-211-0/+4
| | | | | | | to resource name and role, so that any logs related to that can be identified properly. MFC after: 1 week
* If there is any traffic on one of out descriptors, we were not checking forpjd2011-03-211-2/+14
| | | | | | | long running hooks. Fix it by not using select(2) timeout to decide if we want to check hooks or not. MFC after: 1 week
* Use 'list scan' in favor of 'scan', as 'scan' has a different purpose.gjb2011-03-201-1/+1
| | | | | Pointed out by: bschmidt MFC after: 1 day
* Use resolvconf(8) to update /etc/resolv.conf.ume2011-03-181-25/+46
| | | | | If you don't want to use resolvconf(8) to update /etc/resolv.conf, you can put resolvconf_enable="NO" into /etc/dhclient-enter-hooks.
* Add resolvconf(8) which manages resolv.conf.ume2011-03-182-0/+38
|
* For secondary, set 2 * HAST_KEEPALIVE seconds timeout for incomingtrociny2011-03-173-9/+8
| | | | | | | | | | connection so the worker will exit if it does not receive packets from the primary during this interval. Reported by: Christian Vogt <Christian.Vogt@haw-hamburg.de> Tested by: Christian Vogt <Christian.Vogt@haw-hamburg.de> Approved by: pjd (mentor) MFC after: 1 week
* Remove #include needed for debugging.pjd2011-03-151-1/+0
| | | | MFC after: 1 week
* In command line options allow size to be specified using k/M/G/Ttrociny2011-03-132-25/+9
| | | | | | | suffixes. Approved by: pjd (mentor) MFC after: 1 week
* Fix grammar.ae2011-03-121-2/+2
| | | | | Pointed out: Ben Kaduk MFC after: 2 weeks
* Remove unneeded newline.gjb2011-03-121-1/+0
| | | | MFC after: 1 week
* Add example of using 'scan' for wireless networks, similarly togjb2011-03-121-0/+4
| | | | | | | | OpenBSD's ifconfig(8). PR: 151952 Submitted by: Jared (rhyous of yahoo com) MFC after: 1 week
* Document GEOM_PART_EBR_COMPAT option.ae2011-03-121-1/+7
| | | | MFC after: 2 weeks
* Make workers inherit debug level from the main process.trociny2011-03-112-2/+6
| | | | | Approved by: pjd (mentor) MFC after: 1 week
* Widen fields that display partition offset/length.uqs2011-03-102-6/+5
| | | | | | | | | | 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
* Remove dead code in bsdlabel depending on __alpha__uqs2011-03-102-38/+4
|
* Remove bsdlabel test-script that was full of broken assumptions.uqs2011-03-102-181/+0
| | | | | | | - 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
* Remove bsdlabel.5, which hasn't been installed in over 7 yearsuqs2011-03-103-523/+0
| | | | and contains little more than an out-dated copy of <sys/disklabel.h>
* Change example to not be controversial.pjd2011-03-091-6/+8
| | | | | | | | I'm sorry to anyone who felt offended by this. PR: docs/155385 Reported by: maga_lena <mirto@riseup.net> MFC after: 1 week
* It is better to sometimes have not aligned columns thanae2011-03-081-6/+0
| | | | | | often have wrapped lines. MFC after: 2 weeks
* Add -p option to `gpart show` command to show provider's names ofae2011-03-082-14/+40
| | | | | | | partitions instead of partition's indexes. This may be useful with GPT partitioning scheme or EBR without GEOM_PART_EBR_COMPAT option. MFC after: 2 weeks
* Unbreak the build.pjd2011-03-071-5/+5
| | | | MFC after: 2 weeks
* Print some of the numbers in human readable form (using %N).pjd2011-03-071-6/+10
| | | | MFC after: 2 weeks
* - Log size of data to synchronize in human readable form (using %N).pjd2011-03-071-6/+18
| | | | | | | - Log synchronization time (using %T). - Log synchronization speed in human readable form (using %N). MFC after: 2 weeks
* Use %S to print IP address and port number.pjd2011-03-071-18/+2
| | | | MFC after: 2 weeks
OpenPOWER on IntegriCloud