virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: "K. Y. Srinivasan" <kys@microsoft.com>
To: gregkh@suse.de, linux-kernel@vger.kernel.org,
	devel@linuxdriverproject.org, virtualization@lists.osdl.org
Cc: "K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>
Subject: [PATCH 19/46]  Staging: hv: storvsc: Handle IDE devices using the storvsc driver
Date: Sat, 27 Aug 2011 11:31:18 -0700	[thread overview]
Message-ID: <1314469905-7058-19-git-send-email-kys@microsoft.com> (raw)
In-Reply-To: <1314469905-7058-1-git-send-email-kys@microsoft.com>

Now, enable handling of all IDE devices by extending the storvsc
device id table to handle IDE guid. As part of this cleanup Kconfig
and Hyper-V Makefile to not build the IDE driver (blkvsc).

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
 drivers/staging/hv/Kconfig       |    7 -------
 drivers/staging/hv/Makefile      |    2 --
 drivers/staging/hv/storvsc_drv.c |   21 ++++++++-------------
 3 files changed, 8 insertions(+), 22 deletions(-)

diff --git a/drivers/staging/hv/Kconfig b/drivers/staging/hv/Kconfig
index 5e0c9f6..26b5064 100644
--- a/drivers/staging/hv/Kconfig
+++ b/drivers/staging/hv/Kconfig
@@ -15,13 +15,6 @@ config HYPERV_STORAGE
 	help
 	 Select this option to enable the Hyper-V virtual storage driver.
 
-config HYPERV_BLOCK
-	tristate "Microsoft Hyper-V virtual block driver"
-	depends on BLOCK && SCSI && (LBDAF || 64BIT)
-	default HYPERV
-	help
-	  Select this option to enable the Hyper-V virtual block driver.
-
 config HYPERV_NET
 	tristate "Microsoft Hyper-V virtual network driver"
 	depends on NET
diff --git a/drivers/staging/hv/Makefile b/drivers/staging/hv/Makefile
index 3004674..bb89437 100644
--- a/drivers/staging/hv/Makefile
+++ b/drivers/staging/hv/Makefile
@@ -1,6 +1,5 @@
 obj-$(CONFIG_HYPERV)		+= hv_vmbus.o hv_timesource.o
 obj-$(CONFIG_HYPERV_STORAGE)	+= hv_storvsc.o
-obj-$(CONFIG_HYPERV_BLOCK)	+= hv_blkvsc.o
 obj-$(CONFIG_HYPERV_NET)	+= hv_netvsc.o
 obj-$(CONFIG_HYPERV_UTILS)	+= hv_utils.o
 obj-$(CONFIG_HYPERV_MOUSE)	+= hv_mouse.o
@@ -9,6 +8,5 @@ hv_vmbus-y := vmbus_drv.o \
 		 hv.o connection.o channel.o \
 		 channel_mgmt.o ring_buffer.o
 hv_storvsc-y := storvsc_drv.o storvsc.o
-hv_blkvsc-y := blkvsc_drv.o  storvsc.o
 hv_netvsc-y := netvsc_drv.o netvsc.o rndis_filter.o
 hv_utils-y := hv_util.o hv_kvp.o
diff --git a/drivers/staging/hv/storvsc_drv.c b/drivers/staging/hv/storvsc_drv.c
index f434200..9464f99 100644
--- a/drivers/staging/hv/storvsc_drv.c
+++ b/drivers/staging/hv/storvsc_drv.c
@@ -645,27 +645,22 @@ static struct scsi_host_template scsi_driver = {
 	.dma_boundary =		PAGE_SIZE-1,
 };
 
+/*
+ * The storvsc_probe function assumes that the IDE guid
+ * is the second entry.
+ */
 static const struct hv_vmbus_device_id id_table[] = {
 	/* SCSI guid */
 	{ VMBUS_DEVICE(0xd9, 0x63, 0x61, 0xba, 0xa1, 0x04, 0x29, 0x4d,
 		       0xb6, 0x05, 0x72, 0xe2, 0xff, 0xb1, 0xdc, 0x7f) },
+	/* IDE guid */
+	{ VMBUS_DEVICE(0x32, 0x26, 0x41, 0x32, 0xcb, 0x86, 0xa2, 0x44,
+		       0x9b, 0x5c, 0x50, 0xd1, 0x41, 0x73, 0x54, 0xf5) },
 	{ },
 };
 
 MODULE_DEVICE_TABLE(vmbus, id_table);
 
-/*
- * This declaration is temporary; once we get the
- * infrastructure in place, we will integrate with
- * id_table.
- */
-
-static const uuid_le ide_blk_guid = {
-	.b = {
-		0x32, 0x26, 0x41, 0x32, 0xcb, 0x86, 0xa2, 0x44,
-		0x9b, 0x5c, 0x50, 0xd1, 0x41, 0x73, 0x54, 0xf5
-	}
-};
 
 /*
  * storvsc_probe - Add a new device for this driver
@@ -681,7 +676,7 @@ static int storvsc_probe(struct hv_device *device)
 	int path = 0;
 	int target = 0;
 
-	if (!uuid_le_cmp(device->dev_type, ide_blk_guid))
+	if (!memcmp(&device->dev_type.b, id_table[1].guid, sizeof(uuid_le)))
 		dev_is_ide = true;
 	else
 		dev_is_ide = false;
-- 
1.7.4.1

  parent reply	other threads:[~2011-08-27 18:31 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-27 18:31 [PATCH 0000/0046] Staging: hv: Driver cleanup K. Y. Srinivasan
2011-08-27 18:31 ` [PATCH 01/46] Staging: hv: storvsc: Inline free_stor_device() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 02/46] Staging: hv: storvsc: Do not aquire an unnecessary reference on stor_device K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 03/46] Staging: hv: storvsc: Rename must_get_stor_device() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 04/46] Staging: hv: storvsc: Rename get_stor_device() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 05/46] Staging: hv: storvsc: Cleanup alloc_stor_device() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 06/46] Staging: hv: storvsc: Introduce state to manage the lifecycle of stor device K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 07/46] Staging: hv: storvsc: Prevent outgoing traffic when stor dev is being destroyed K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 08/46] Staging: hv: storvsc: Get rid of release_stor_device() by inlining the code K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 09/46] Staging: hv: storvsc: Get rid of final_release_stor_device() by inlining code K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 10/46] Staging: hv: storvsc: Get rid of the reference counting in struct storvsc_device K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 11/46] Staging: hv: netvsc: Inline the code for free_net_device() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 12/46] Staging: hv: netvsc: Cleanup alloc_net_device() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 13/46] Staging: hv: netvsc: Introduce state to manage the lifecycle of net device K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 14/46] Staging: hv: netvsc: Prevent outgoing traffic when netvsc dev is destroyed K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 15/46] Staging: hv: netvsc: Get rid of release_outbound_net_device() by inlining the code K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 16/46] Staging: hv: netvsc: Get rid of release_inbound_net_device() " K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 17/46] Staging: hv: netvsc: Get rid of the refcnt field in struct netvsc_device K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 18/46] Staging: hv: storvsc: Add code to handle IDE devices using the storvsc driver K. Y. Srinivasan
2011-08-30 11:07     ` Dan Carpenter
2011-08-27 18:31   ` K. Y. Srinivasan [this message]
2011-08-27 18:31   ` [PATCH 20/46] Staging: hv: blkvsc: Get rid of blkvsc_drv.c as this code is not used K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 21/46] Staging: hv: storvsc: Optimize bounce buffer handling for the "write" case K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 22/46] Staging: hv: storvsc: Optimize the bounce buffer handling in the "read" case K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 23/46] Staging: hv: storvsc: Include storvsc.c in storvsc_drv.c K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 24/46] Staging: hv: storvsc: Cleanup storvsc_drv.c after adding the contents of storvsc.c K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 25/46] Staging: hv: storvsc: Add the contents of hyperv_storage.h to storvsc_drv.c K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 26/46] Staging: hv: storvsc: Cleanup storvsc_drv.c after adding the contents of hyperv_storage.h K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 27/46] Staging: hv: storvsc: Fixup srb and scsi status for INQUIRY and MODE_SENSE K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 28/46] Staging: hv: storvsc: Fix a typo K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 29/46] Staging: hv: storvsc: In case of scsi errors offline the device K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 30/46] Staging: hv: storvsc: No need to copy from bounce buffer in case of a failure K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 31/46] Staging: hv: util: Forcefully shutdown when shutdown is requested K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 32/46] Staging: hv: util: Adjust guest time in a process context K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 33/46] Staging: hv: vmbus: Check before invoking the channel callback K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 34/46] Staging: hv: vmbus: Properly deal with de-registering " K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 35/46] Staging: hv: Fix a bug in vmbus_match() K. Y. Srinivasan
2011-08-29 18:00     ` Greg KH
2011-08-27 18:31   ` [PATCH 36/46] Staging: hv: vmbus: Get rid of vmbus_on_isr() by inlining the code K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 37/46] Staging: hv: vmbus: Check for events before messages K. Y. Srinivasan
2011-08-29 18:05     ` Greg KH
2011-08-30 17:06       ` KY Srinivasan
2011-08-30 17:38         ` Greg KH
2011-08-31 14:22           ` KY Srinivasan
2011-08-27 18:31   ` [PATCH 38/46] Staging: hv: vmbus: Do not enable auto eoi K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 39/46] Staging: hv: vmbus: Fixup indentation in vmbus_acpi_add() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 40/46] Staging: hv: vmbus: Get rid of some dated/redundant comments K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 41/46] Staging: hv: vmbus: Fix a bug in error handling in vmbus_bus_init() K. Y. Srinivasan
2011-08-29 18:08     ` Greg KH
2011-08-30 10:29       ` Dan Carpenter
2011-08-30 14:07         ` Greg KH
2011-08-30 17:25           ` KY Srinivasan
2011-08-30 17:07       ` KY Srinivasan
2011-08-27 18:31   ` [PATCH 42/46] Staging: hv: vmbus: Get rid of an unnecessary check in vmbus_connect() K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 43/46] Staging: hv: vmbus: Fix a checkpatch warning in ring_buffer.c K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 44/46] Staging: hv: vmbus: Fix checkpatch warnings in connection.c K. Y. Srinivasan
2011-08-28  6:56     ` Joe Perches
2011-08-30 17:03       ` KY Srinivasan
2011-08-29 18:09     ` Greg KH
2011-08-30 17:11       ` KY Srinivasan
2011-08-30 17:41         ` Greg KH
2011-08-31 14:21           ` KY Srinivasan
2011-08-27 18:31   ` [PATCH 45/46] Staging: hv: mousevsc: Fix checkpatch errors and warnings K. Y. Srinivasan
2011-08-27 18:31   ` [PATCH 46/46] Staging: hv: Update the TODO file K. Y. Srinivasan
2011-08-29 18:12     ` Greg KH
2011-08-30 17:13       ` KY Srinivasan
2011-08-29 18:15 ` [PATCH 0000/0046] Staging: hv: Driver cleanup Greg KH
2011-08-30 17:27   ` KY Srinivasan
2011-08-30 12:48 ` Olaf Hering
2011-08-30 17:22   ` KY Srinivasan
2011-08-30 17:43     ` Greg KH
2011-08-30 18:04       ` Olaf Hering
2011-08-30 18:19         ` Greg KH
2011-08-31  9:11           ` Olaf Hering
2011-09-01 15:43             ` [PATCH RFC] ata_piix: ignore disks in a hyper-v guest Olaf Hering
2011-08-31 14:27         ` [PATCH 0000/0046] Staging: hv: Driver cleanup KY Srinivasan
2011-08-31 14:18       ` KY Srinivasan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1314469905-7058-19-git-send-email-kys@microsoft.com \
    --to=kys@microsoft.com \
    --cc=devel@linuxdriverproject.org \
    --cc=gregkh@suse.de \
    --cc=haiyangz@microsoft.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=virtualization@lists.osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).