Author: hselasky
Date: Thu May 16 17:18:29 2019
New Revision: 347807
URL: https://svnweb.freebsd.org/changeset/base/347807

Log:
  MFC r347257:
  Make sure to error out when arming the CQ fails in ibcore.
  
  Sponsored by: Mellanox Technologies

Modified:
  stable/11/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c
==============================================================================
--- stable/11/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c  Thu May 16 
17:17:52 2019        (r347806)
+++ stable/11/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c  Thu May 16 
17:18:29 2019        (r347807)
@@ -1692,6 +1692,7 @@ ssize_t ib_uverbs_req_notify_cq(struct ib_uverbs_file 
 {
        struct ib_uverbs_req_notify_cq cmd;
        struct ib_cq                  *cq;
+       int retval;
 
        if (copy_from_user(&cmd, buf, sizeof cmd))
                return -EFAULT;
@@ -1700,12 +1701,15 @@ ssize_t ib_uverbs_req_notify_cq(struct ib_uverbs_file 
        if (!cq)
                return -EINVAL;
 
-       ib_req_notify_cq(cq, cmd.solicited_only ?
-                        IB_CQ_SOLICITED : IB_CQ_NEXT_COMP);
+       if (ib_req_notify_cq(cq, cmd.solicited_only ?
+                            IB_CQ_SOLICITED : IB_CQ_NEXT_COMP) < 0)
+               retval = -ENXIO;
+       else
+               retval = in_len;
 
        put_cq_read(cq);
 
-       return in_len;
+       return retval;
 }
 
 ssize_t ib_uverbs_destroy_cq(struct ib_uverbs_file *file,
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to