Re: [PATCH RESEND V2 3/7] scsi: storvsc: Untangle the storage protocol negotiation from the vmbus protocol negotiation.

From: Johannes Thumshirn
Date: Fri Aug 14 2015 - 02:46:08 EST


KY Srinivasan <kys@xxxxxxxxxxxxx> writes:

>> -----Original Message-----
>> From: Johannes Thumshirn [mailto:jthumshirn@xxxxxxx]
>> Sent: Thursday, August 13, 2015 7:34 AM
>> To: KY Srinivasan <kys@xxxxxxxxxxxxx>; Keith Mange
>> <Keith.Mange@xxxxxxxxxxxxx>
>> Cc: gregkh@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
>> devel@xxxxxxxxxxxxxxxxxxxxxx; ohering@xxxxxxxx;
>> jbottomley@xxxxxxxxxxxxx; hch@xxxxxxxxxxxxx; linux-scsi@xxxxxxxxxxxxxxx;
>> apw@xxxxxxxxxxxxx; vkuznets@xxxxxxxxxx; jasowang@xxxxxxxxxx
>> Subject: Re: [PATCH RESEND V2 3/7] scsi: storvsc: Untangle the storage
>> protocol negotiation from the vmbus protocol negotiation.
>>
>> "K. Y. Srinivasan" <kys@xxxxxxxxxxxxx> writes:
>>
>> > From: Keith Mange <keith.mange@xxxxxxxxxxxxx>
>> >
>> > Currently we are making decisions based on vmbus protocol versions
>> > that have been negotiated; use storage potocol versions instead.
>> >
>> > Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
>> > Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
>> > Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
>> > ---
>> > drivers/scsi/storvsc_drv.c | 109
>> +++++++++++++++++++++++++++++++++++---------
>> > 1 files changed, 87 insertions(+), 22 deletions(-)
>> >
>> > diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c
>> > index 5f9d133..f29871e 100644
>> > --- a/drivers/scsi/storvsc_drv.c
>> > +++ b/drivers/scsi/storvsc_drv.c
>> > @@ -56,14 +56,18 @@
>> > * V1 RC > 2008/1/31: 2.0
>> > * Win7: 4.2
>> > * Win8: 5.1
>> > + * Win8.1: 6.0
>> > + * Win10: 6.2
>> > */
>> >
>> > #define VMSTOR_PROTO_VERSION(MAJOR_, MINOR_) ((((MAJOR_)
>> & 0xff) << 8) | \
>> > (((MINOR_) & 0xff)))
>> >
>> > +#define VMSTOR_PROTO_VERSION_WIN6
>> VMSTOR_PROTO_VERSION(2, 0)
>> > #define VMSTOR_PROTO_VERSION_WIN7
>> VMSTOR_PROTO_VERSION(4, 2)
>> > #define VMSTOR_PROTO_VERSION_WIN8
>> VMSTOR_PROTO_VERSION(5, 1)
>> > -
>> > +#define VMSTOR_PROTO_VERSION_WIN8_1
>> VMSTOR_PROTO_VERSION(6, 0)
>> > +#define VMSTOR_PROTO_VERSION_WIN10
>> VMSTOR_PROTO_VERSION(6, 2)
>> >
>> > /* Packet structure describing virtual storage requests. */
>> > enum vstor_packet_operation {
>> > @@ -205,6 +209,46 @@ struct vmscsi_request {
>> >
>> >
>> > /*
>> > + * The list of storage protocols in order of preference.
>> > + */
>> > +struct vmstor_protocol {
>> > + int protocol_version;
>> > + int sense_buffer_size;
>> > + int vmscsi_size_delta;
>> > +};
>> > +
>> > +#define VMSTOR_NUM_PROTOCOLS 5
>>
>> can't you just use ARRAY_SIZE() here, so you don't have to touch the
>> constant every time a new protocol is appended to the list?
>
> Certainly. These patches have been floating around for more than a month now and if it is ok
> with you, I will submit a patch on top of this current series to address the concern you have raised.
> James, please let me know.
>

No objections from my side, but it's up to James to decide what and when
he picks up patches.

Thanks,
Johannes

--
Johannes Thumshirn Storage
jthumshirn@xxxxxxx +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 NÃrnberg
GF: Felix ImendÃrffer, Jane Smithard, Graham Norton
HRB 21284 (AG NÃrnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/