Messages in this thread | | | Date | Mon, 28 Nov 2022 13:58:34 +0200 | From | Leon Romanovsky <> | Subject | Re: [PATCH v3 2/2] RDMA/srp: Fix error return code in srp_parse_options() |
| |
On Sat, Nov 26, 2022 at 09:50:54PM +0800, Wang Yufen wrote: > In the previous while loop, "ret" may be assigned zero, , so the error > return code may be incorrectly set to 0 instead of -EINVAL. > Add out_with_einval goto label and covert all "goto out;" to "goto > out_with_einval:" where it's appropriate, alse investigate each case > separately as Andy suggessted. > > Fixes: e711f968c49c ("IB/srp: replace custom implementation of hex2bin()") > Fixes: 2a174df0c602 ("IB/srp: Use kstrtoull() instead of simple_strtoull()") > Fixes: 19f313438c77 ("IB/srp: Add RDMA/CM support") > Signed-off-by: Wang Yufen <wangyufen@huawei.com> > --- > drivers/infiniband/ulp/srp/ib_srp.c | 86 ++++++++++++++++++++++++++----------- > 1 file changed, 60 insertions(+), 26 deletions(-)
<...>
> @@ -3623,6 +3653,10 @@ static int srp_parse_options(struct net *net, const char *buf, > out: > kfree(options); > return ret; > + > +out_with_einval:
It needs to be changed back.
Thanks
> + ret = -EINVAL; > + goto out; > } > > static ssize_t add_target_store(struct device *dev, > -- > 1.8.3.1 >
| |