svn commit: r347257 - head/sys/ofed/drivers/infiniband/core

Hans Petter Selasky hselasky at FreeBSD.org
Wed May 8 10:32:47 UTC 2019


Author: hselasky
Date: Wed May  8 10:32:45 2019
New Revision: 347257
URL: https://svnweb.freebsd.org/changeset/base/347257

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

Modified:
  head/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c

Modified: head/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c
==============================================================================
--- head/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c	Wed May  8 10:32:22 2019	(r347256)
+++ head/sys/ofed/drivers/infiniband/core/ib_uverbs_cmd.c	Wed May  8 10:32:45 2019	(r347257)
@@ -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,


More information about the svn-src-head mailing list