linux-stable/drivers/s390
Julian Wiedmann 2223318c28 s390/qdio: remove 'merge_pending' mechanism
For non-QEBSM devices, get_buf_states() merges PENDING and EMPTY buffers
into a single group of finished buffers. To allow the upper-layer driver
to differentiate between the two states, qdio_check_pending() looks at
each buffer's state again and sets the sbal_state flag to
QDIO_OUTBUF_STATE_FLAG_PENDING accordingly.

So effectively we're spending overhead on _every_ Output Queue
inspection, just to avoid some additional TX completion calls in case
a group of buffers has completed with mixed EMPTY / PENDING state.
Given that PENDING buffers should rarely occur, this is a bad trade-off.
In particular so as the additional checks in get_buf_states() affect
_all_ device types (even those that don't use the PENDING state).

Rip it all out, and just report the PENDING completions separately as
we already do for QEBSM devices.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Reviewed-by: Benjamin Block <bblock@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2021-02-13 17:17:55 +01:00
..
block s390/dasd: fix list corruption of lcu list 2020-12-17 13:41:30 -07:00
char s390/tape: Fix spelling mistake in function name tape_3590_erp_succeded 2021-01-27 13:00:47 +01:00
cio s390/qdio: remove 'merge_pending' mechanism 2021-02-13 17:17:55 +01:00
crypto s390/zcrypt: return EIO when msg retry limit reached 2021-02-09 15:57:04 +01:00
net s390/qdio: remove 'merge_pending' mechanism 2021-02-13 17:17:55 +01:00
scsi SCSI misc on 20201216 2020-12-16 13:34:31 -08:00
virtio s390/virtio: remove unused pm callbacks 2020-06-16 13:44:04 +02:00
Makefile s390: remove pointless drivers-y in drivers/s390/Makefile 2019-09-16 13:21:51 +02:00