HomeFreeBSD

MFC 308664,308742,308743

Description

MFC 308664,308742,308743

308664

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
Sponsored by:   Microsoft
Differential Revision:  https://reviews.freebsd.org/D8224

308742

hyperv/vss: Nuke unused variables.

Submitted by:   markj
Reported by:    markj
Sponsored by:   Microsoft

308743

hyperv/vss: Install the userland daemon to /usr/sbin instead of /

Submitted by:   markj
Reported by:    markj
Sponsored by:   Microsoft

Details

Provenance
sepheAuthored on
Parents
rS310734: Note that the Chelsio T6 also supports 25Gbps.
Branches
Unknown
Tags
Unknown