lkml.org 
[lkml]   [2015]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH 1/6] scsi: storvsc: Rather than look for sets of specific protocol versions, make decisions based on ranges.
Date


> -----Original Message-----
> From: devel [mailto:driverdev-devel-bounces@linuxdriverproject.org] On
> Behalf Of K. Y. Srinivasan
> Sent: Friday, May 29, 2015 1:29 PM
> To: gregkh@linuxfoundation.org; linux-kernel@vger.kernel.org;
> devel@linuxdriverproject.org; ohering@suse.com; jbottomley@parallels.com;
> hch@infradead.org; linux-scsi@vger.kernel.org; apw@canonical.com;
> vkuznets@redhat.com; jasowang@redhat.com
> Cc: Keith Mange
> Subject: [PATCH 1/6] scsi: storvsc: Rather than look for sets of specific protocol
> versions, make decisions based on ranges.
>
> From: keith.mange@microsoft.com <keith.mange@microsoft.com>
>
> Rather than look for sets of specific protocol versions, make decisions based on
> ranges. This will be safer and require fewer changes going forward as we add
> more storage protocol versions.
>
Reviewed-by: Long Li <longli@microsoft.com>
> Tested-by: Alex Ng <alexng@microsoft.com>
> Signed-off-by: Keith Mange <keith.mange@microsoft.com>
> Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
> ---
> drivers/scsi/storvsc_drv.c | 11 +++--------
> 1 files changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c index
> 3c6584f..582f3b5 100644
> --- a/drivers/scsi/storvsc_drv.c
> +++ b/drivers/scsi/storvsc_drv.c
> @@ -988,8 +988,7 @@ static int storvsc_channel_init(struct hv_device *device)
> * support multi-channel.
> */
> max_chns = vstor_packet-
> >storage_channel_properties.max_channel_cnt;
> - if ((vmbus_proto_version != VERSION_WIN7) &&
> - (vmbus_proto_version != VERSION_WS2008)) {
> + if (vmbus_proto_version >= VERSION_WIN8) {
> if (vstor_packet->storage_channel_properties.flags &
> STORAGE_CHANNEL_SUPPORTS_MULTI_CHANNEL)
> process_sub_channels = true;
> @@ -1758,9 +1757,7 @@ static int storvsc_probe(struct hv_device *device,
> * set state to properly communicate with the host.
> */
>
> - switch (vmbus_proto_version) {
> - case VERSION_WS2008:
> - case VERSION_WIN7:
> + if (vmbus_proto_version < VERSION_WIN8) {
> sense_buffer_size = PRE_WIN8_STORVSC_SENSE_BUFFER_SIZE;
> vmscsi_size_delta = sizeof(struct vmscsi_win8_extension);
> vmstor_current_major = VMSTOR_WIN7_MAJOR; @@ -
> 1768,8 +1765,7 @@ static int storvsc_probe(struct hv_device *device,
> max_luns_per_target =
> STORVSC_IDE_MAX_LUNS_PER_TARGET;
> max_targets = STORVSC_IDE_MAX_TARGETS;
> max_channels = STORVSC_IDE_MAX_CHANNELS;
> - break;
> - default:
> + } else {
> sense_buffer_size =
> POST_WIN7_STORVSC_SENSE_BUFFER_SIZE;
> vmscsi_size_delta = 0;
> vmstor_current_major = VMSTOR_WIN8_MAJOR; @@ -
> 1783,7 +1779,6 @@ static int storvsc_probe(struct hv_device *device,
> * VCPUs in the guest.
> */
> max_sub_channels = (num_cpus /
> storvsc_vcpus_per_sub_channel);
> - break;
> }
>
> scsi_driver.can_queue = (max_outstanding_req_per_channel *
> --
> 1.7.4.1
>
> _______________________________________________
> devel mailing list
> devel@linuxdriverproject.org
> http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


\
 
 \ /
  Last update: 2015-05-29 23:01    [W:0.096 / U:8.488 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site