1*fad4aec8SGlen Barber.\" $FreeBSD$ 2*fad4aec8SGlen Barber.\" 3*fad4aec8SGlen Barber.\" Copyright (c) 2012 Microsoft Corp. 4*fad4aec8SGlen Barber.\" All rights reserved. 5*fad4aec8SGlen Barber.\" 6*fad4aec8SGlen Barber.\" Redistribution and use in source and binary forms, with or without 7*fad4aec8SGlen Barber.\" modification, are permitted provided that the following conditions 8*fad4aec8SGlen Barber.\" are met: 9*fad4aec8SGlen Barber.\" 1. Redistributions of source code must retain the above copyright 10*fad4aec8SGlen Barber.\" notice, this list of conditions and the following disclaimer. 11*fad4aec8SGlen Barber.\" 2. Redistributions in binary form must reproduce the above copyright 12*fad4aec8SGlen Barber.\" notice, this list of conditions and the following disclaimer in the 13*fad4aec8SGlen Barber.\" documentation and/or other materials provided with the distribution. 14*fad4aec8SGlen Barber.\" 15*fad4aec8SGlen Barber.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16*fad4aec8SGlen Barber.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17*fad4aec8SGlen Barber.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18*fad4aec8SGlen Barber.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19*fad4aec8SGlen Barber.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20*fad4aec8SGlen Barber.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21*fad4aec8SGlen Barber.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22*fad4aec8SGlen Barber.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23*fad4aec8SGlen Barber.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24*fad4aec8SGlen Barber.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25*fad4aec8SGlen Barber.\" SUCH DAMAGE. 26*fad4aec8SGlen Barber.\" 27*fad4aec8SGlen Barber.Dd September 10, 2013 28*fad4aec8SGlen Barber.Dt HYPER-V 4 29*fad4aec8SGlen Barber.Os 30*fad4aec8SGlen Barber.Sh NAME 31*fad4aec8SGlen Barber.Nm hv_storvsc 32*fad4aec8SGlen Barber.Nd Hyper-V Storage Virtual Service Consumer 33*fad4aec8SGlen Barber.Sh SYNOPSIS 34*fad4aec8SGlen BarberTo compile this driver into the kernel, place the following lines in 35*fad4aec8SGlen Barberthe system kernel configuration file: 36*fad4aec8SGlen Barber.Bd -ragged -offset indent 37*fad4aec8SGlen Barber.Cd "device hyperv" 38*fad4aec8SGlen Barber.Ed 39*fad4aec8SGlen Barber.Sh DESCRIPTION 40*fad4aec8SGlen BarberThe 41*fad4aec8SGlen Barber.Nm 42*fad4aec8SGlen Barberdriver implements the virtual store device for 43*fad4aec8SGlen Barber.Fx 44*fad4aec8SGlen Barberguest 45*fad4aec8SGlen Barberpartitions running on Hyper-V. 46*fad4aec8SGlen Barber.Fx 47*fad4aec8SGlen Barberguest partitions running on Hyper-V do not have direct access to 48*fad4aec8SGlen Barberstorage devices attached to the Hyper-V server. 49*fad4aec8SGlen BarberAlthough a 50*fad4aec8SGlen Barber.Fx 51*fad4aec8SGlen Barberguest can access storage devices using Hyper-V's 52*fad4aec8SGlen Barberfull emulation mode, the performance in this mode tends to be unsatisfactory. 53*fad4aec8SGlen Barber.Pp 54*fad4aec8SGlen BarberTo counter the above issues, the 55*fad4aec8SGlen Barber.Nm 56*fad4aec8SGlen Barberdriver implements a storage 57*fad4aec8SGlen BarberVirtual 58*fad4aec8SGlen BarberService Consumer (VSC) that relays storage requests from the guest partition 59*fad4aec8SGlen Barberto the storage Virtual Service Provider (VSP) hosted in the root partition 60*fad4aec8SGlen Barberusing the high performance data exchange infrastructure provided by 61*fad4aec8SGlen Barber.Xr hv_vmbus 4 62*fad4aec8SGlen Barberdriver. 63*fad4aec8SGlen BarberThe VSP in the root partition then forwards the storage related requests to 64*fad4aec8SGlen Barberthe physical storage device. 65*fad4aec8SGlen Barber.Pp 66*fad4aec8SGlen BarberThis driver functions by presenting a SCSI HBA interface to the Comman Access 67*fad4aec8SGlen BarberMethod (CAM) layer. 68*fad4aec8SGlen BarberCAM control blocks (CCBs) are 69*fad4aec8SGlen Barberconverted into VSCSI protocol messages which are delivered to the root 70*fad4aec8SGlen Barberpartition VSP over the Hyper-V VMBus. 71*fad4aec8SGlen Barber.Sh SEE ALSO 72*fad4aec8SGlen Barber.Xr hv_vmbus 4 , 73*fad4aec8SGlen Barber.Xr hv_utils 4 , 74*fad4aec8SGlen Barber.Xr hv_netvsc 4 , 75*fad4aec8SGlen Barber.Xr hv_ata_pci_disengage 4 76*fad4aec8SGlen Barber.Sh HISTORY 77*fad4aec8SGlen BarberSupport for 78*fad4aec8SGlen Barber.Nm 79*fad4aec8SGlen Barberfirst appeared in 80*fad4aec8SGlen Barber.Fx 10.0 . 81*fad4aec8SGlen BarberThe driver was developed through a joint effort between Citrix Incorporated, 82*fad4aec8SGlen BarberMicrosoft Corporation, and Network Appliance Incorporated. 83*fad4aec8SGlen Barber.Sh AUTHORS 84*fad4aec8SGlen Barber.An -nosplit 85*fad4aec8SGlen Barber.Fx 86*fad4aec8SGlen Barbersupport for 87*fad4aec8SGlen Barber.Nm 88*fad4aec8SGlen Barberwas first added by 89*fad4aec8SGlen Barber.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com . 90