iser-target: Reduce CQ lock contention by batch polling

In order to reduce the contention on CQ locking (present
in some LLDDs) we poll in batches of 16 work completion items.

Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
diff --git a/drivers/infiniband/ulp/isert/ib_isert.h b/drivers/infiniband/ulp/isert/ib_isert.h
index fc1d323..2a0721f 100644
--- a/drivers/infiniband/ulp/isert/ib_isert.h
+++ b/drivers/infiniband/ulp/isert/ib_isert.h
@@ -165,6 +165,7 @@
  *
  * @device:     pointer to device handle
  * @cq:         completion queue
+ * @wcs:        work completion array
  * @active_qps: Number of active QPs attached
  *              to completion context
  * @work:       completion work handle
@@ -172,6 +173,7 @@
 struct isert_comp {
 	struct isert_device     *device;
 	struct ib_cq		*cq;
+	struct ib_wc		 wcs[16];
 	int                      active_qps;
 	struct work_struct	 work;
 };