net/af_iucv: count packets in the xmit path
authorJulian Wiedmann <jwi@linux.ibm.com>
Thu, 28 Jan 2021 11:41:06 +0000 (12:41 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 29 Jan 2021 04:36:21 +0000 (20:36 -0800)
commitef6af7bdb9e6c14eae8dc5fe852aefe1e089c85c
tree1e9d200306516e7009f8050e5d373a85e8eaf93e
parentc464444fa2ca41255817e2bdcfc47a658ec20645
net/af_iucv: count packets in the xmit path

The TX code keeps track of all skbs that are in-flight but haven't
actually been sent out yet. For native IUCV sockets that's not a huge
deal, but with TRANS_HIPER sockets it would be much better if we
didn't need to maintain a list of skb clones.

Note that we actually only care about the _count_ of skbs in this stage
of the TX pipeline. So as prep work for removing the skb tracking on
TRANS_HIPER sockets, keep track of the skb count in a separate variable
and pair any list {enqueue, unlink} with a count {increment, decrement}.

Then replace all occurences where we currently look at the skb list's
fill level.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
include/net/iucv/af_iucv.h
net/iucv/af_iucv.c