aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/cio/qdio_main.c
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 /drivers/s390/cio/qdio_main.c
parents390/qdio: don't merge ERROR output buffers (diff)
downloadlinux-dev-c11a3dfd6fedd5266c2f9d7286981dc804dfb7cc.tar.xz
linux-dev-c11a3dfd6fedd5266c2f9d7286981dc804dfb7cc.zip
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>
Diffstat (limited to '')
-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;