Re: [PATCH 01/19] cifs: Add smb2_send_recv

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I fixed up checkpatch warnings in the first patch - and after
reviewing merged the first three (so far)

On Fri, Nov 17, 2017 at 12:05 PM, Steve French <smfrench@xxxxxxxxx> wrote:
> Note checkpatch warnings (I have fixed some up)
>
> ./scripts/checkpatch.pl ~/Downloads/01-19-cifs-Add-smb2_send_recv.patch
> ERROR: space prohibited before that ',' (ctx:WxW)
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>                                                         ^
>
> WARNING: function definition argument 'const unsigned int' should also
> have an identifier name
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>
> WARNING: function definition argument 'struct cifs_ses *' should also
> have an identifier name
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>
> WARNING: function definition argument 'struct kvec *' should also have
> an identifier name
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>
> WARNING: function definition argument 'int' should also have an identifier name
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>
> WARNING: function definition argument 'int *' should also have an
> identifier name
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>
> WARNING: function definition argument 'struct kvec *' should also have
> an identifier name
> #31: FILE: fs/cifs/cifsproto.h:109:
> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>
> On Wed, Nov 8, 2017 at 7:14 PM, Ronnie Sahlberg <lsahlber@xxxxxxxxxx> wrote:
>> This function is similar to SendReceive2 except it does not expect
>> a 4 byte rfc1002 length header in the first io vector.
>>
>> Signed-off-by: Ronnie Sahlberg <lsahlber@xxxxxxxxxx>
>> ---
>>  fs/cifs/cifsproto.h |  4 ++++
>>  fs/cifs/transport.c | 38 ++++++++++++++++++++++++++++++++++++++
>>  2 files changed, 42 insertions(+)
>>
>> diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h
>> index 4143c9dec463..6d86cd120349 100644
>> --- a/fs/cifs/cifsproto.h
>> +++ b/fs/cifs/cifsproto.h
>> @@ -106,6 +106,10 @@ extern int SendReceive2(const unsigned int /* xid */ , struct cifs_ses *,
>>                         struct kvec *, int /* nvec to send */,
>>                         int * /* type of buf returned */, const int flags,
>>                         struct kvec * /* resp vec */);
>> +extern int smb2_send_recv(const unsigned int /* xid */ , struct cifs_ses *,
>> +                         struct kvec *, int /* nvec to send */,
>> +                         int * /* type of buf returned */, const int flags,
>> +                         struct kvec * /* resp vec */);
>>  extern int SendReceiveBlockingLock(const unsigned int xid,
>>                         struct cifs_tcon *ptcon,
>>                         struct smb_hdr *in_buf ,
>> diff --git a/fs/cifs/transport.c b/fs/cifs/transport.c
>> index 7efbab013957..e678307bb7a0 100644
>> --- a/fs/cifs/transport.c
>> +++ b/fs/cifs/transport.c
>> @@ -827,6 +827,44 @@ SendReceive2(const unsigned int xid, struct cifs_ses *ses,
>>         return rc;
>>  }
>>
>> +/* Like SendReceive2 but iov[0] does not contain an rfc1002 header */
>> +int
>> +smb2_send_recv(const unsigned int xid, struct cifs_ses *ses,
>> +              struct kvec *iov, int n_vec, int *resp_buf_type /* ret */,
>> +              const int flags, struct kvec *resp_iov)
>> +{
>> +       struct smb_rqst rqst;
>> +       struct kvec *new_iov;
>> +       int rc;
>> +       int i;
>> +       __u32 count;
>> +       __be32 rfc1002_marker;
>> +
>> +       new_iov = kmalloc(sizeof(struct kvec) * (n_vec + 1), GFP_KERNEL);
>> +       if (!new_iov)
>> +               return -ENOMEM;
>> +
>> +       /* 1st iov is an RFC1002 Session Message length */
>> +       memcpy(new_iov + 1, iov, (sizeof(struct kvec) * n_vec));
>> +
>> +       count = 0;
>> +       for (i = 1; i < n_vec + 1; i++)
>> +               count += new_iov[i].iov_len;
>> +
>> +       rfc1002_marker = cpu_to_be32(count);
>> +
>> +       new_iov[0].iov_base = &rfc1002_marker;
>> +       new_iov[0].iov_len = 4;
>> +
>> +       memset(&rqst, 0, sizeof(struct smb_rqst));
>> +       rqst.rq_iov = new_iov;
>> +       rqst.rq_nvec = n_vec + 1;
>> +
>> +       rc = cifs_send_recv(xid, ses, &rqst, resp_buf_type, flags, resp_iov);
>> +       kfree(new_iov);
>> +       return rc;
>> +}
>> +
>>  int
>>  SendReceive(const unsigned int xid, struct cifs_ses *ses,
>>             struct smb_hdr *in_buf, struct smb_hdr *out_buf,
>> --
>> 2.13.3
>>
>
>
>
> --
> Thanks,
>
> Steve



-- 
Thanks,

Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux