]> git.baikalelectronics.ru Git - kernel.git/commit
tipc: ensure that link congestion and wakeup use same criteria
authorJon Paul Maloy <jon.maloy@ericsson.com>
Tue, 16 Aug 2016 15:53:51 +0000 (11:53 -0400)
committerDavid S. Miller <davem@davemloft.net>
Fri, 19 Aug 2016 04:14:37 +0000 (21:14 -0700)
commit3cd4e686db78069ac18de7379bcca49b6d1a32fc
tree5be9dff97c6e466c0956df3a5bc1f60581f2758c
parent00d08868918c5f0a729681fd44d63959712fb011
tipc: ensure that link congestion and wakeup use same criteria

When a link is attempted woken up after congestion, it uses a different,
more generous criteria than when it was originally declared congested.
This has the effect that the link, and the sending process, sometimes
will be woken up unnecessarily, just to immediately return to congestion
when it turns out there is not not enough space in its send queue to
host the pending message. This is a waste of CPU cycles.

We now change the function link_prepare_wakeup() to use exactly the same
criteria as tipc_link_xmit(). However, since we are now excluding the
window limit from the wakeup calculation, and the current backlog limit
for the lowest level is too small to house even a single maximum-size
message, we have to expand this limit. We do this by evaluating an
alternative, minimum value during the setting of the importance limits.

Acked-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tipc/link.c