RDMA/core: Cosmetic change - move member initialization to correct block
authorYuval Shaia <yuval.shaia@oracle.com>
Mon, 18 Feb 2019 14:23:22 +0000 (16:23 +0200)
committerJason Gunthorpe <jgg@mellanox.com>
Wed, 20 Feb 2019 03:52:19 +0000 (20:52 -0700)
old_pd is used only if IB_MR_REREG_PD flags is set.
For readability move it's initialization to where it is used.

While there rewrite the whole 'if-else' block so on error jump directly
to label and no need for 'else'

Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/core/uverbs_cmd.c

index 4947d1480c6d263b58914d3cef3ce32f1e8b9b92..6baafa1d62d898b8252df0deec5561034bd2ad04 100644 (file)
@@ -819,19 +819,18 @@ static int ib_uverbs_rereg_mr(struct uverbs_attr_bundle *attrs)
                }
        }
 
-       old_pd = mr->pd;
        ret = mr->device->ops.rereg_user_mr(mr, cmd.flags, cmd.start,
                                            cmd.length, cmd.hca_va,
                                            cmd.access_flags, pd,
                                            &attrs->driver_udata);
-       if (!ret) {
-               if (cmd.flags & IB_MR_REREG_PD) {
-                       atomic_inc(&pd->usecnt);
-                       mr->pd = pd;
-                       atomic_dec(&old_pd->usecnt);
-               }
-       } else {
+       if (ret)
                goto put_uobj_pd;
+
+       if (cmd.flags & IB_MR_REREG_PD) {
+               old_pd = mr->pd;
+               atomic_inc(&pd->usecnt);
+               mr->pd = pd;
+               atomic_dec(&old_pd->usecnt);
        }
 
        memset(&resp, 0, sizeof(resp));