On Mon, Feb 26, 2018 at 5:17 PM, Leon Romanovsky <leon@xxxxxxxxxx> wrote: > Hi Selvin, > > Can you please help your colleague to make the patch right? > Sure Leon. He is from a different BU. I will ping him. > Thanks > > On Mon, Feb 26, 2018 at 01:06:02AM -0800, Muneendra wrote: >> Null pointer check is missing in addr_resolve as >> dev_get_by_index may return a NULL pointer. >> And this patch will check whether ndev is NULL >> and further access the same. >> >> The following tests are made. >> >> server client >> --------- --------- >> |1.1.1.1|<----rxe-channel--->|1.1.1.2| >> --------- --------- >> >> On server: rdma_lat -c -n 2 -s 1024 >> On client:rdma_lat 1.1.1.1 -c -n 2 -s 1024 >> >> Fixes: 200298326b27 ("IB/core: Validate route when we init ah") >> On a side note, I am sending similar fix in ib_init_ah_attr_from_path() >> which surfaces from same patch. >> >> Signed-off-by: Muneendra <muneendra.kumar@xxxxxxxxxxxx> >> --- >> drivers/infiniband/core/addr.c | 16 +++++----------- >> 1 file changed, 5 insertions(+), 11 deletions(-) >> >> diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c >> index a5b4cf0..e82344a 100644 >> --- a/drivers/infiniband/core/addr.c >> +++ b/drivers/infiniband/core/addr.c >> @@ -550,19 +550,13 @@ static int addr_resolve(struct sockaddr *src_in, >> dst_release(dst); >> } >> >> - if (ndev->flags & IFF_LOOPBACK) { >> - ret = rdma_translate_ip(dst_in, addr); >> - /* >> - * Put the loopback device and get the translated >> - * device instead. >> - */ >> + if (ndev) { >> + if (ndev->flags & IFF_LOOPBACK) >> + ret = rdma_translate_ip(dst_in, addr); >> + else >> + addr->bound_dev_if = ndev->ifindex; >> dev_put(ndev); >> - ndev = dev_get_by_index(addr->net, addr->bound_dev_if); >> - } else { >> - addr->bound_dev_if = ndev->ifindex; >> } >> - dev_put(ndev); >> - >> return ret; >> } >> >> -- >> 1.8.3.1 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in >> the body of a message to majordomo@xxxxxxxxxxxxxxx >> More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html