Skip to content

Commit

Permalink
IB/uverbs: Fix uverbs_attr_get_obj
Browse files Browse the repository at this point in the history
The err pointer comes from uverbs_attr_get, not from the uobject member,
which does not store an ERR_PTR.

Fixes: be934cc ("IB/uverbs: Add device memory registration ioctl support")
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
  • Loading branch information
jgunthorpe committed May 23, 2018
1 parent 30bf066 commit f4602cb
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions include/rdma/uverbs_ioctl.h
Original file line number Diff line number Diff line change
Expand Up @@ -411,13 +411,13 @@ static inline int uverbs_attr_get_enum_id(const struct uverbs_attr_bundle *attrs
static inline void *uverbs_attr_get_obj(const struct uverbs_attr_bundle *attrs_bundle,
u16 idx)
{
struct ib_uobject *uobj =
uverbs_attr_get(attrs_bundle, idx)->obj_attr.uobject;
const struct uverbs_attr *attr;

if (IS_ERR(uobj))
return uobj;
attr = uverbs_attr_get(attrs_bundle, idx);
if (IS_ERR(attr))
return ERR_CAST(attr);

return uobj->object;
return attr->obj_attr.uobject->object;
}

static inline int uverbs_copy_to(const struct uverbs_attr_bundle *attrs_bundle,
Expand Down

0 comments on commit f4602cb

Please sign in to comment.