IB/hfi1: Return actual error value from program_rcvarray()
authorMichael J. Ruhl <michael.j.ruhl@intel.com>
Wed, 2 May 2018 13:42:29 +0000 (06:42 -0700)
committerDoug Ledford <dledford@redhat.com>
Wed, 9 May 2018 19:53:29 +0000 (15:53 -0400)
A failure of program_rcvarray() is treated inconsistently by the
calling function.  In one case the error is returned, in a second
case, the error is overwritten with EFAULT.  In both cases the
code path is doing the same thing, allocating memory for groups,
so it should be consistent.

Make the error path consistent and return the error generated by
program_rcvarray().

Reviewed-by: Harish Chegondi <harish.chegondi@intel.com>
Fixes: 7e7a436ecb6e ("staging/hfi1: Add TID entry program function body")
Signed-off-by: Michael J. Ruhl <michael.j.ruhl@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/hfi1/user_exp_rcv.c

index 0d5330b7353d2e814b09ef54366153128434799a..6a4c5142515ab30b89090fb1c00249cab1f597d8 100644 (file)
@@ -437,7 +437,6 @@ int hfi1_user_exp_rcv_setup(struct hfi1_filedata *fd,
                                hfi1_cdbg(TID,
                                          "Failed to program RcvArray entries %d",
                                          ret);
-                               ret = -EFAULT;
                                goto unlock;
                        } else if (ret > 0) {
                                if (grp->used == grp->size)