s390/qeth: don't replace a fully completed async TX buffer
authorJulian Wiedmann <jwi@linux.ibm.com>
Mon, 7 Dec 2020 13:12:31 +0000 (14:12 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Mar 2021 16:06:20 +0000 (17:06 +0100)
commit926200fd224c3e858971b8037f570c9efdc7ca96
tree15f6c8f067f4f128934a828975f329b59340964c
parent13e312dca2f2ebefea23d5385ffa54d7d1b03ecc
s390/qeth: don't replace a fully completed async TX buffer

[ Upstream commit db4ffdcef7c9a842e55228c9faef7abf8b72382f ]

For TX buffers that require an additional async notification via QAOB, the
TX completion code can now manage all the necessary processing if the
notification has already occurred (or is occurring concurrently).

In such cases we can avoid replacing the metadata that is associated
with the buffer's slot on the ring, and just keep using the current one.

As qeth_clear_output_buffer() will also handle any kmem cache-allocated
memory that was mapped into the TX buffer, qeth_qdio_handle_aob()
doesn't need to worry about it.

While at it, also remove the unneeded forward declaration for
qeth_init_qdio_out_buf().

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/s390/net/qeth_core_main.c