freebsd-skq/include
Sepherosa Ziehau 168fce73b5 hyperv/vss: Add driver and tools for VSS
VSS stands for "Volume Shadow Copy Service".  Unlike virtual machine
snapshot, it only takes snapshot for the virtual disks, so both
filesystem and applications have to aware of it, and cooperate the
whole VSS process.

This driver exposes two device files to the userland:

    /dev/hv_fsvss_dev

    Normally userland programs should _not_ mess with this device file.
    It is currently used by the hv_vss_daemon(8), which freezes and
    thaws the filesystem.  NOTE: currently only UFS is supported, if
    the system mounts _any_ other filesystems, the hv_vss_daemon(8)
    will veto the VSS process.

    If hv_vss_daemon(8) was disabled, then this device file must be
    opened, and proper ioctls must be issued to keep the VSS working.

    /dev/hv_appvss_dev

    Userland application can opened this device file to receive the
    VSS freeze notification, hold the VSS for a while (mainly to flush
    application data to filesystem), release the VSS process, and
    receive the VSS thaw notification i.e. applications can run again.

    The VSS will still work, even if this device file is not opened.
    However, only filesystem consistency is promised, if this device
    file is not opened or is not operated properly.

hv_vss_daemon(8) is started by devd(8) by default.  It can be disabled
by editting /etc/devd/hyperv.conf.

Submitted by:	Hongjiang Zhang <honzhan microsoft com>
Reviewed by:	kib, mckusick
MFC after:	3 weeks
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D8224
2016-11-15 02:36:12 +00:00
..
arpa include: minor spelling fixes. 2016-04-30 14:43:42 +00:00
gssapi Add META_MODE support. 2015-06-13 19:20:56 +00:00
protocols Add META_MODE support. 2015-06-13 19:20:56 +00:00
rpc xdr: Fix xdr_rpc* defines. 2016-03-04 22:03:38 +00:00
rpcsvc include: minor spelling fixes. 2016-04-30 14:43:42 +00:00
xlocale LC_*_MASK bit shifting order was partially broken from the initial commit 2016-08-23 20:33:56 +00:00
_ctype.h Commit log from Dragonfly: 2015-10-13 20:43:49 +00:00
a.out.h
ar.h
assert.h
bitstring.h Improve performance and functionality of the bitstring(3) api 2016-05-04 22:34:11 +00:00
complex.h
cpio.h
ctype.h Commit log from Dragonfly: 2015-10-13 20:43:49 +00:00
db.h
dirent.h Add missing declaration of ino_t. 2016-05-30 07:50:57 +00:00
dlfcn.h
elf-hints.h
elf.h
err.h
fmtmsg.h
fnmatch.h
fstab.h
fts.h
ftw.h
getopt.h
glob.h
grp.h Fix up setgrent(3) to have a POSIX-compliant prototype. 2016-07-31 08:05:15 +00:00
gssapi.h
hesiod.h We don't use these files. 2014-08-09 20:03:40 +00:00
iconv.h Remove the const qualifier from iconv(3) to comply with POSIX: 2015-04-15 09:09:20 +00:00
ieeefp.h
ifaddrs.h
inttypes.h Rename __wchar_t so it no longer conflicts with __wchar_t from clang 3.4 2014-04-01 14:46:11 +00:00
iso646.h
kenv.h
langinfo.h langinfo.h: Hide YESSTR and NOSTR in strict POSIX mode. 2014-04-19 12:38:01 +00:00
libgen.h Replace basename(3) by a thread-safe implementation. 2016-11-03 20:21:34 +00:00
limits.h Detect integer overflow and limit the number of positional 2016-10-31 18:38:58 +00:00
link.h
locale.h
Makefile hyperv/vss: Add driver and tools for VSS 2016-11-15 02:36:12 +00:00
Makefile.depend new depends 2015-06-16 23:37:19 +00:00
malloc_np.h Update jemalloc to 4.1.0. 2016-02-29 19:10:32 +00:00
malloc.h
memory.h
mk-osreldate.sh Stop building vers.c in include/ and only build the needed osreldate.h. 2015-11-25 19:10:59 +00:00
monetary.h Make strfmon_l() work without requiring the use of <xlocale.h>. 2016-05-31 12:29:21 +00:00
mpool.h
mqueue.h Export the mq_getfd_np() symbol from librt.so, which allows to get 2016-10-02 17:02:59 +00:00
ndbm.h Fix prototype of dbm_open(). 2016-05-31 18:32:57 +00:00
netconfig.h
netdb.h Add NI_NUMERICSCOPE. 2016-07-28 10:05:41 +00:00
nl_types.h
nlist.h
nss.h
nsswitch.h
paths.h Implement suggestion by jhb@ to have _PATH_FIRMWARE instead of hard 2016-03-23 04:18:57 +00:00
printf.h
proc_service.h
pthread_np.h
pthread.h Add implementation of robust mutexes, hopefully close enough to the 2016-05-17 09:56:22 +00:00
pwd.h
ranlib.h
readpassphrase.h
regex.h
res_update.h Update our stub resolver to final version of libbind. 2014-08-12 12:36:06 +00:00
resolv.h resolver: preserve binary compatibility; reduce header pollution 2015-12-14 17:21:06 +00:00
runetype.h
search.h Improve typing of POSIX search tree functions. 2016-10-13 18:25:40 +00:00
semaphore.h Ensure #include <semaphore.h> is sufficient for using SEM_VALUE_MAX. 2015-01-31 16:39:26 +00:00
setjmp.h include: Remove checks for __BSD_VISIBLE where redundant with __XSI_VISIBLE 2014-05-11 13:48:21 +00:00
signal.h Fix the signature of the psignal() function. 2016-05-30 13:51:27 +00:00
spawn.h
stab.h
stdalign.h
stdbool.h
stddef.h Define max_align_t for C11. 2016-10-21 23:50:02 +00:00
stdio.h Add the __printflike attribute to the declaration of vdprintf(3) 2016-10-01 23:08:26 +00:00
stdlib.h Remove setkey(), encrypt(), des_setkey() and des_cipher(). 2016-10-03 18:20:58 +00:00
stdnoreturn.h
string.h Add timingsafe_bcmp and timingsafe_memcmp. 2016-08-14 23:38:50 +00:00
stringlist.h Remove clause 3 and 4 from the license 2015-05-21 08:38:25 +00:00
strings.h Add explicit_bzero(3) and its kernel counterpart. 2014-10-07 04:54:11 +00:00
sysexits.h
tar.h
termios.h include: Remove checks for __BSD_VISIBLE where redundant with __XSI_VISIBLE 2014-05-11 13:48:21 +00:00
tgmath.h Roll back r271012 even more aggressively. 2014-09-05 05:36:32 +00:00
time.h Export the mq_getfd_np() symbol from librt.so, which allows to get 2016-10-02 17:02:59 +00:00
timeconv.h
timers.h
ttyent.h Add a new flag to /etc/ttys: onifconsole. This is equivalent to "on" if the 2014-01-20 18:15:06 +00:00
uchar.h
ulimit.h
unistd.h Remove setkey(), encrypt(), des_setkey() and des_cipher(). 2016-10-03 18:20:58 +00:00
unwind.h
utime.h
utmpx.h
uuid.h
varargs.h
wchar.h Add missing va_list to <wchar.h>. 2016-05-30 16:26:34 +00:00
wctype.h Commit log from Dragonfly: 2015-10-13 20:43:49 +00:00
wordexp.h
xlocale.h