linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/16] Staging: hv: Cleanup storage drivers - Phase I
@ 2011-03-23 17:48 K. Y. Srinivasan
  2011-03-23 17:50 ` [PATCH 01/16] Staging: hv: Add the inclusion guard for vstorage.h K. Y. Srinivasan
  0 siblings, 1 reply; 19+ messages in thread
From: K. Y. Srinivasan @ 2011-03-23 17:48 UTC (permalink / raw)
  To: gregkh, linux-kernel, devel, virtualization; +Cc: K. Y. Srinivasan

This is first in a series of patch-sets aimed at cleaning up the storage
drivers for Hyper-V. Before I get into the details of this patch-set, I think
it is  useful to give a brief overview of the storage related front-end
drivers currently in the tree for Linux on Hyper-V:

On the host side, Windows emulates the  standard PC hardware 
to permit hosting of fully virtualized operating systems.
To enhance disk I/O performance, we support a virtual block driver.
This block driver currently handles disks that have been setup as IDE 
disks for the guest - as specified in the guest configuration.

On the SCSI side, we emulate a SCSI HBA. Devices configured
under the SCSI controller for the guest are handled via this
emulated HBA (SCSI front-end). So, SCSI disks configured for 
the guest are handled through native SCSI upper-level drivers.
If this SCSI front-end driver is not loaded, currently, the guest
cannot see devices that have been configured as SCSI devices. 
So, while the virtual block driver described earlier could potentially
handle all block devices, the implementation choices made on the host
may not permit it. Also, the only SCSI device that can be currently
configured for the guest is a disk device.

Both the block device driver (hv_blkvsc) and the SCSI front-end
driver (hv_storvsc) communicate with the host via unique channels
that are implemented as bi-directional ring-buffers. Each 
(storage) channel carries with it enough state to uniquely
identify the device on the host side. Microsoft has chosen to
use SCSI verbs for this storage channel communication.

In this patch-set I have addressed the following issues in the Hyper-V
storage drivers (virtual block and SCSI front-end):

	1) Get rid of the inclusion of storvsc.c from blockvsc.c
	2) Cleanup storvsc.c
	3) Get rid of the file blkvsc.c
	4) Cleanup the initialization sequence for both block and 
	   SCSI front-end drivers.

Regards,

K. Y

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2011-04-05  7:35 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-23 17:48 [PATCH 00/16] Staging: hv: Cleanup storage drivers - Phase I K. Y. Srinivasan
2011-03-23 17:50 ` [PATCH 01/16] Staging: hv: Add the inclusion guard for vstorage.h K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 02/16] Staging: hv: Move the definition of struct storvsc_request_extension K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 03/16] Staging: hv: Move the definition of struct storvsc_device K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 04/16] Staging: hv: Cleanup " K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 05/16] Staging: hv: Get rid of the include of storvsc.c from blkvsc.c K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 06/16] Staging: hv: Get rid of dead code in storvsc.c K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 07/16] Staging: hv: Move the definition of stor_vsc_initialize() K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 08/16] Staging: hv: Make the function stor_vsc_initialize() static K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 09/16] Staging: hv: Cleanup the initialization of storvsc driver K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 10/16] Staging: hv: Move the contents of blkvsc.c to blkvsc_drv.c K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 11/16] Staging: hv: Get rid of the file blkvsc.c K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 12/16] Staging: hv: Cleanup initialization of blkvsc driver K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 13/16] Staging: hv: Move the definition of the function get_stor_device() K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 14/16] Staging: hv: Move the definition of the function put_stor_device() K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 15/16] Staging: hv: Move the definition of the function stor_vsc_on_host_reset() K. Y. Srinivasan
2011-03-23 17:50   ` [PATCH 16/16] Staging: hv: Make the function stor_vsc_on_host_reset() static K. Y. Srinivasan
2011-04-05  4:28   ` [PATCH 01/16] Staging: hv: Add the inclusion guard for vstorage.h Greg KH
2011-04-05  4:29     ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).