Re: [smb3] unreachable code and memory leaks

From: Steve French
Date: Mon Jun 18 2018 - 12:56:23 EST


On Mon, Jun 18, 2018 at 8:07 AM, Gustavo A. R. Silva
<gustavo@xxxxxxxxxxxxxx> wrote:
> Hi Steve,
>
> While doing some static analysis I came across the following piece of code at fs/cifs/smb2pdu.c:2017:
>
> 2017 if (n_iov > 2) {
> 2018 struct create_context *ccontext =
> 2019 (struct create_context *)iov[n_iov-1].iov_base;
> 2020 ccontext->Next =
> 2021 cpu_to_le32(iov[n_iov-1].iov_len);
> 2022 }

Good catch - this is harmless (and experimental mount option) - cut
and paste - unneeded clause.
Fixing now


> Also, it seems there are multiple places in which memory allocated for *path* is leaking:
>
> 1946 else
> 1947 return -EIO;
>
> 1951 if (rc)
> 1952 return rc;
>
> 1987 if (rc) {
> 1988 cifs_small_buf_release(req);
> 1989 return rc;
> 1990 }

Cleaning that up now. Will post a patch - thx.


--
Thanks,

Steve