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>
                }
        }
 
-       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));