opnsense-src/lib
Alan Somers 7a0c41d5d7 zfsd(8), the ZFS fault management daemon
Add zfsd, which deals with hard drive faults in ZFS pools. It manages
hotspares and replements in drive slots that publish physical paths.

cddl/usr.sbin/zfsd
	Add zfsd(8) and its unit tests

cddl/usr.sbin/Makefile
	Add zfsd to the build

lib/libdevdctl
	A C++ library that helps devd clients process events

lib/Makefile
share/mk/bsd.libnames.mk
share/mk/src.libnames.mk
	Add libdevdctl to the build. It's a private library, unusable by
	out-of-tree software.

etc/defaults/rc.conf
	By default, set zfsd_enable to NO

etc/mtree/BSD.include.dist
	Add a directory for libdevdctl's include files

etc/mtree/BSD.tests.dist
	Add a directory for zfsd's unit tests

etc/mtree/BSD.var.dist
	Add /var/db/zfsd/cases, where zfsd stores case files while it's shut
	down.

etc/rc.d/Makefile
etc/rc.d/zfsd
	Add zfsd's rc script

sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
	Fix the resource.fs.zfs.statechange message. It had a number of
	problems:

	It was only being emitted on a transition to the HEALTHY state.
	That made it impossible for zfsd to take actions based on drives
	getting sicker.

	It compared the new state to vdev_prevstate, which is the state that
	the vdev had the last time it was opened.  That doesn't make sense,
	because a vdev can change state multiple times without being
	reopened.

	vdev_set_state contains logic that will change the device's new
	state based on various conditions.  However, the statechange event
	was being posted _before_ that logic took effect.  Now it's being
	posted after.

Submitted by:	gibbs, asomers, mav, allanjude
Reviewed by:	mav, delphij
Relnotes:	yes
Sponsored by:	Spectra Logic Corp, iX Systems
Differential Revision:	https://reviews.freebsd.org/D6564
2016-05-28 17:43:40 +00:00
..
atf Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
clang Add FREEBSD_CC_VERSION which will be used to define __FreeBSD_cc_version. 2016-05-21 01:32:20 +00:00
csu Stop dereferencing _end in crt1.c. This was only needed for brk/sbrk so is 2016-05-22 08:20:30 +00:00
lib80211 First pass through library packaging. 2016-02-04 21:16:35 +00:00
libalias Update libalias and libpam packaged files. 2016-02-05 01:03:38 +00:00
libarchive MFV r299425: 2016-05-12 10:16:16 +00:00
libauditd First pass through library packaging. 2016-02-04 21:16:35 +00:00
libbegemot First pass through library packaging. 2016-02-04 21:16:35 +00:00
libblocksruntime First pass through library packaging. 2016-02-04 21:16:35 +00:00
libbluetooth Improve performance and functionality of the bitstring(3) api 2016-05-04 22:34:11 +00:00
libbsdstat Fix off by one error in index limit calculation 2016-05-16 15:42:59 +00:00
libbsm First pass through library packaging. 2016-02-04 21:16:35 +00:00
libbsnmp Remove NO_WERROR from libbsnmp/Makefile.inc 2016-05-13 21:17:49 +00:00
libbz2 First pass through library packaging. 2016-02-04 21:16:35 +00:00
libc Let l64a() properly null terminate its result. 2016-05-26 20:55:15 +00:00
libc++ Use a relative symlink for proper --sysroot support. 2016-05-28 16:38:09 +00:00
libc_nonshared Add META_MODE support. 2015-06-13 19:20:56 +00:00
libcalendar First pass through library packaging. 2016-02-04 21:16:35 +00:00
libcam Fix multiple Coverity Out-of-bounds access false postive issues in CAM 2016-05-24 00:57:11 +00:00
libcasper MFH 2016-04-16 02:32:12 +00:00
libclang_rt Implement (ACFLAGS|CFLAGS|CXXFLAGS).SRC globally. 2016-03-26 03:46:12 +00:00
libcom_err First pass through library packaging. 2016-02-04 21:16:35 +00:00
libcompat Fix Coverity CID 978183 Resource leak in rexec(). 2016-05-25 07:26:22 +00:00
libcompiler_rt Make armv6 hard float abi by default. Kill armv6hf. 2016-05-18 06:01:18 +00:00
libcrypt Implement SHA-512 truncated (224 and 256 bits) 2016-05-28 16:06:07 +00:00
libcuse libcuse: make more use of the howmany() macro when available. 2016-04-26 01:20:16 +00:00
libcxxrt Move external GCC compiler hacks to bsd.sys.mk. 2016-05-27 23:03:44 +00:00
libdevctl Add 'devctl delete' that calls device_delete_child(). 2016-04-27 16:33:17 +00:00
libdevdctl zfsd(8), the ZFS fault management daemon 2016-05-28 17:43:40 +00:00
libdevinfo MFH 2016-04-04 23:55:32 +00:00
libdevstat First pass through library packaging. 2016-02-04 21:16:35 +00:00
libdpv MFH 2016-03-02 16:14:46 +00:00
libdwarf elftoolchain: Use ${SRCTOP} for the top of the FreeBSD tree 2016-04-21 12:58:29 +00:00
libedit lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libefi First pass through library packaging. 2016-02-04 21:16:35 +00:00
libelf elftoolchain: Use ${SRCTOP} for the top of the FreeBSD tree 2016-04-21 12:58:29 +00:00
libelftc Update to ELF Tool Chain r3477 2016-05-25 20:56:30 +00:00
libevent First pass through library packaging. 2016-02-04 21:16:35 +00:00
libexecinfo First pass through library packaging. 2016-02-04 21:16:35 +00:00
libexpat First pass through library packaging. 2016-02-04 21:16:35 +00:00
libfetch Call closedir() before returning from fetchListFile() to avoid a leak. 2016-05-25 07:43:32 +00:00
libfigpar MFH 2016-03-02 16:14:46 +00:00
libgeom First pass through library packaging. 2016-02-04 21:16:35 +00:00
libgpio Use GPIOTOGGLE to toggle the pin state instead of read, modify and write. 2016-04-19 15:18:31 +00:00
libgssapi lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libiconv_modules META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host. 2015-11-25 19:10:28 +00:00
libipsec libipsec: use NULL instead of zero for pointers. 2016-04-18 15:08:31 +00:00
libjail First pass through library packaging. 2016-02-04 21:16:35 +00:00
libkiconv lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libkvm lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libldns First pass through library packaging. 2016-02-04 21:16:35 +00:00
liblzma First pass through library packaging. 2016-02-04 21:16:35 +00:00
libmagic MFV r299716: file 5.27 2016-05-14 08:52:37 +00:00
libmd Implement SHA-512 truncated (224 and 256 bits) 2016-05-28 16:06:07 +00:00
libmemstat MFH 2016-02-10 04:20:39 +00:00
libmilter MFH 2016-03-02 16:14:46 +00:00
libmp libmp: Fix trivial buffer overrun 2016-05-12 03:53:20 +00:00
libmt Add the density code for LTO-7 to libmt and the mt(1) man page. 2016-05-20 19:30:52 +00:00
libnandfs First pass through library packaging. 2016-02-04 21:16:35 +00:00
libnetbsd First pass through library packaging. 2016-02-04 21:16:35 +00:00
libnetgraph First pass through library packaging. 2016-02-04 21:16:35 +00:00
libngatm First pass through library packaging. 2016-02-04 21:16:35 +00:00
libnv Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
libopenbsd First pass through library packaging. 2016-02-04 21:16:35 +00:00
libopie First pass through library packaging. 2016-02-04 21:16:35 +00:00
libpam Set retval in the empty password case to avoid a path through the 2016-05-16 15:32:02 +00:00
libpcap MFH 2016-03-02 16:14:46 +00:00
libpe DIRDEPS_BUILD: Update dependencies. 2016-02-16 02:14:30 +00:00
libpjdlog MFH 2016-03-02 16:14:46 +00:00
libpmc lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libproc Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
libprocstat First pass through library packaging. 2016-02-04 21:16:35 +00:00
libradius The NAS-Identifier attribute is a string, not an integer. 2016-05-24 11:44:43 +00:00
librpcsec_gss librpcsec_gss: remove redundant code. 2016-05-11 14:37:33 +00:00
librpcsvc MFH 2016-03-02 16:14:46 +00:00
librt Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
librtld_db First pass through library packaging. 2016-02-04 21:16:35 +00:00
libsbuf First pass through library packaging. 2016-02-04 21:16:35 +00:00
libsdp lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libsm MFH 2016-03-02 16:14:46 +00:00
libsmb First pass through library packaging. 2016-02-04 21:16:35 +00:00
libsmdb MFH 2016-03-02 16:14:46 +00:00
libsmutil MFH 2016-03-02 16:14:46 +00:00
libsqlite3 First pass through library packaging. 2016-02-04 21:16:35 +00:00
libstand Fix a bug in the parsing code: always use the len and not 8. 2016-05-20 05:33:26 +00:00
libstdbuf First pass through library packaging. 2016-02-04 21:16:35 +00:00
libstdthreads First pass through library packaging. 2016-02-04 21:16:35 +00:00
libsysdecode MFH 2016-04-04 23:55:32 +00:00
libtacplus First pass through library packaging. 2016-02-04 21:16:35 +00:00
libtelnet First pass through library packaging. 2016-02-04 21:16:35 +00:00
libthr Document _umtx_op(2) interface for the implementation of robust mutexes. 2016-05-19 17:40:00 +00:00
libthread_db First pass through library packaging. 2016-02-04 21:16:35 +00:00
libucl First pass through library packaging. 2016-02-04 21:16:35 +00:00
libufs libufs: Simplify generation number calculation. 2016-05-18 19:59:05 +00:00
libugidfw First pass through library packaging. 2016-02-04 21:16:35 +00:00
libulog First pass through library packaging. 2016-02-04 21:16:35 +00:00
libunbound MFH 2016-03-14 18:54:29 +00:00
libusb lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libusbhid MFH 2016-04-11 15:24:59 +00:00
libutil libutil: minor spelling fixes. 2016-05-18 15:25:45 +00:00
libvgl MFH 2016-04-13 16:19:50 +00:00
libvmmapi lib: minor spelling fixes in comments. 2016-05-01 19:37:33 +00:00
libwrap First pass through library packaging. 2016-02-04 21:16:35 +00:00
libxo Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
liby First pass through library packaging. 2016-02-04 21:16:35 +00:00
libypclnt MFH 2016-04-16 02:32:12 +00:00
libz MFH 2016-04-04 23:55:32 +00:00
msun Make armv6 hard float abi by default. Kill armv6hf. 2016-05-18 06:01:18 +00:00
ncurses DIRDEPS_BUILD: Run the staged bootstrap-tools version of build-tools. 2016-05-09 22:21:09 +00:00
tests Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
Makefile zfsd(8), the ZFS fault management daemon 2016-05-28 17:43:40 +00:00
Makefile.inc