diff --git a/drivers/infiniband/core/netlink.c b/drivers/infiniband/core/netlink.c index 396e293703040938b2459a3c53e022d9444a702d..e497dfbee4352c99b8fdafba40ccfa4aff1e367f 100644 --- a/drivers/infiniband/core/netlink.c +++ b/drivers/infiniband/core/netlink.c @@ -125,7 +125,8 @@ int ibnl_put_attr(struct sk_buff *skb, struct nlmsghdr *nlh, unsigned char *prev_tail; prev_tail = skb_tail_pointer(skb); - NLA_PUT(skb, type, len, data); + if (nla_put(skb, type, len, data)) + goto nla_put_failure; nlh->nlmsg_len += skb_tail_pointer(skb) - prev_tail; return 0;