summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2018-05-02 10:03:30 -0700
committerDavid S. Miller <davem@davemloft.net>2018-05-02 16:37:38 -0400
commit7df40c2673a1307c3260aab6f9d4b9bf97ca8fd7 (patch)
treee2da27920cae457805549786292b4dc6e0b592d8 /tools
parent30ca22e4a5d0063dd9a9cdf35cd139c5807cbeb3 (diff)
downloadop-kernel-dev-7df40c2673a1307c3260aab6f9d4b9bf97ca8fd7.zip
op-kernel-dev-7df40c2673a1307c3260aab6f9d4b9bf97ca8fd7.tar.gz
net_sched: fq: take care of throttled flows before reuse
Normally, a socket can not be freed/reused unless all its TX packets left qdisc and were TX-completed. However connect(AF_UNSPEC) allows this to happen. With commit fc59d5bdf1e3 ("pkt_sched: fq: clear time_next_packet for reused flows") we cleared f->time_next_packet but took no special action if the flow was still in the throttled rb-tree. Since f->time_next_packet is the key used in the rb-tree searches, blindly clearing it might break rb-tree integrity. We need to make sure the flow is no longer in the rb-tree to avoid this problem. Fixes: fc59d5bdf1e3 ("pkt_sched: fq: clear time_next_packet for reused flows") Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud