summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Wiedmann <jwi@linux.vnet.ibm.com>2018-03-07 14:19:43 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2018-03-26 16:12:48 +0200
commitc11a3dfd6fedd5266c2f9d7286981dc804dfb7cc (patch)
tree423b7fa200f2978f40ad13b83ac0ebaa3be1c415
parent0cf1e05157b9e5530dcc3ca9fec9bf617fc93375 (diff)
s390/qdio: restrict buffer merging to eligible devices
Only attempt to merge PENDING into EMPTY buffers for devices where the PENDING state is actually expected (ie. IQD with CQ). This might speed up the hot path a little bit. Signed-off-by: Julian Wiedmann <jwi@linux.vnet.ibm.com> Reviewed-by: Ursula Braun <ubraun@linux.vnet.ibm.com> Reviewed-by: Benjamin Block <bblock@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-rw-r--r--drivers/s390/cio/qdio_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c
index bd26df85f559..63c6e9cf958f 100644
--- a/drivers/s390/cio/qdio_main.c
+++ b/drivers/s390/cio/qdio_main.c
@@ -761,7 +761,8 @@ static int get_outbound_buffer_frontier(struct qdio_q *q)
if (!count)
goto out;
- count = get_buf_states(q, q->first_to_check, &state, count, 0, 1);
+ count = get_buf_states(q, q->first_to_check, &state, count, 0,
+ q->u.out.use_cq);
if (!count)
goto out;