> -----Original Message----- > From: Johannes Thumshirn [mailto:jthumshirn@xxxxxxx] > Sent: Thursday, August 13, 2015 11:46 PM > To: KY Srinivasan <kys@xxxxxxxxxxxxx> > Cc: Keith Mange <Keith.Mange@xxxxxxxxxxxxx>; > 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. > > 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. James, I have sent a separate patch on top of the set I sent yesterday that addresses Johannes' comments. Regards, K. Y ��.n��������+%������w��{.n�����{������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f