[PATCH v3 0/5] QRTR flow control improvements

From: Bjorn Andersson
Date: Tue Jan 07 2020 - 00:47:59 EST

In order to prevent overconsumption of resources on the remote side QRTR
implements a flow control mechanism.

Move the handling of the incoming confirm_rx to the receiving process to
ensure incoming flow is controlled. Then implement outgoing flow
control, using the recommended algorithm of counting outstanding
non-confirmed messages and blocking when hitting a limit. The last three
patches refactors the node assignment and port lookup, in order to
remove the worker in the receive path.

Bjorn Andersson (5):
net: qrtr: Move resume-tx transmission to recvmsg
net: qrtr: Implement outgoing flow control
net: qrtr: Migrate node lookup tree to spinlock
net: qrtr: Make qrtr_port_lookup() use RCU
net: qrtr: Remove receive worker

net/qrtr/qrtr.c | 314 +++++++++++++++++++++++++++++++++++++-----------
1 file changed, 242 insertions(+), 72 deletions(-)