Re: [PATCH 06/59] Staging: hv: blkvsc: Use the newly introduced vmbus ID in the blockvsc driver

Greg KH
2011-08-25T20:43:33Z

On Thu, Aug 25, 2011 at 09:48:32AM -0700, K. Y. Srinivasan wrote:
> Use the newly introduced vmbus ID in the blockvsc driver. Also, do
> the associated cleanup.
>
> Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
> ---
> drivers/staging/hv/blkvsc_drv.c | 23 ++++++++++++++---------
> 1 files changed, 14 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/staging/hv/blkvsc_drv.c b/drivers/staging/hv/blkvsc_drv.c
> index 018b293..9b99387 100644
> --- a/drivers/staging/hv/blkvsc_drv.c
> +++ b/drivers/staging/hv/blkvsc_drv.c
> @@ -111,14 +111,6 @@ struct block_device_context {
>
> static const char *drv_name = "blkvsc";
>
> -/* {32412632-86cb-44a2-9b5c-50d1417354f5} */
> -static const uuid_le dev_type = {
> - .b = {
> - 0x32, 0x26, 0x41, 0x32, 0xcb, 0x86, 0xa2, 0x44,
> - 0x9b, 0x5c, 0x50, 0xd1, 0x41, 0x73, 0x54, 0xf5
> - }
> -};
> -
> /*
> * There is a circular dependency involving blkvsc_request_completion()
> * and blkvsc_do_request().
> @@ -802,10 +794,24 @@ static void blkvsc_request(struct request_queue *queue)
> }
> }
>
> +static const struct hv_vmbus_device_id id_table[] = {
> + {
> + /* IDE guid */
> + .guid = {
> + 0x32, 0x26, 0x41, 0x32, 0xcb, 0x86, 0xa2, 0x44,
> + 0x9b, 0x5c, 0x50, 0xd1, 0x41, 0x73, 0x54, 0xf5
> + }
> + },
> + {
> + .guid = { }
> + },
> +};
>
> +MODULE_DEVICE_TABLE(vmbus, id_table);
>
> /* The one and only one */
> static struct hv_driver blkvsc_drv = {
> + .id_table = id_table,
> .probe = blkvsc_probe,
> .remove = blkvsc_remove,
> .shutdown = blkvsc_shutdown,
> @@ -829,7 +835,6 @@ static int blkvsc_drv_init(void)
>
> BUILD_BUG_ON(sizeof(sector_t) != 8);
>
> - memcpy(&drv->dev_type, &dev_type, sizeof(uuid_le));

If I'm not mistaken, the driver just broke now and will not bind
properly to this device, right?

Ick, oh well, I'll plod on and hope that you fix this issue up in a
later patch, but note that this might make 'git bisect' cause problems
if someone lands in the middle of this series with things broken
(run-time, not build time).

Sorry, I should have caught that first time through this series, I
didn't realize it until right now when I tried it.

greg k-h