diff options
author | Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> | 2007-05-16 14:50:55 +0200 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2007-05-19 08:51:54 -0700 |
commit | bd5a6ccc0e6d8eed3047b4af0e5c1e7168869cd8 (patch) | |
tree | de6f1244a49a5facba605812d8c0f03167374ff2 /drivers/infiniband | |
parent | 26bbf13ce1ca21ec69175bcc4b995cb8ffdf8593 (diff) | |
download | kernel_samsung_espresso10-bd5a6ccc0e6d8eed3047b4af0e5c1e7168869cd8.zip kernel_samsung_espresso10-bd5a6ccc0e6d8eed3047b4af0e5c1e7168869cd8.tar.gz kernel_samsung_espresso10-bd5a6ccc0e6d8eed3047b4af0e5c1e7168869cd8.tar.bz2 |
IB/ehca: Return proper error code if register_mr fails
Set the return code of ehca_register_mr() to ENOMEM if the corresponding
firmware call fails due to out of resources. Some other error codes
were explicitly mapped to EINVAL -- just remove those cases so they
get mapped to the default case, which already returns EINVAL anyway.
Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/hw/ehca/ehca_mrmw.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/infiniband/hw/ehca/ehca_mrmw.c b/drivers/infiniband/hw/ehca/ehca_mrmw.c index 84c5bb4..add79bd 100644 --- a/drivers/infiniband/hw/ehca/ehca_mrmw.c +++ b/drivers/infiniband/hw/ehca/ehca_mrmw.c @@ -2050,13 +2050,10 @@ int ehca_mrmw_map_hrc_alloc(const u64 hipz_rc) switch (hipz_rc) { case H_SUCCESS: /* successful completion */ return 0; - case H_ADAPTER_PARM: /* invalid adapter handle */ - case H_RT_PARM: /* invalid resource type */ case H_NOT_ENOUGH_RESOURCES: /* insufficient resources */ - case H_MLENGTH_PARM: /* invalid memory length */ - case H_MEM_ACCESS_PARM: /* invalid access controls */ case H_CONSTRAINED: /* resource constraint */ - return -EINVAL; + case H_NO_MEM: + return -ENOMEM; case H_BUSY: /* long busy */ return -EBUSY; default: |