diff options
author | Yunsheng Lin <linyunsheng@huawei.com> | 2019-06-28 09:13:19 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-07-01 19:02:47 -0700 |
commit | 27ba4059e06b3bbd38a7d944fd5a78cdf47534f4 (patch) | |
tree | 717af81b11215303a6c0a7d5fbfeee53284e1825 /mm/memblock.c | |
parent | 0d0bcacc54e65540b8a3d680c130b741010e23a3 (diff) | |
download | linux-27ba4059e06b3bbd38a7d944fd5a78cdf47534f4.tar.bz2 |
net: link_watch: prevent starvation when processing linkwatch wq
When user has configured a large number of virtual netdev, such
as 4K vlans, the carrier on/off operation of the real netdev
will also cause it's virtual netdev's link state to be processed
in linkwatch. Currently, the processing is done in a work queue,
which may cause rtnl locking starvation problem and worker
starvation problem for other work queue, such as irqfd_inject wq.
This patch releases the cpu when link watch worker has processed
a fixed number of netdev' link watch event, and schedule the
work queue again when there is still link watch event remaining.
Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'mm/memblock.c')
0 files changed, 0 insertions, 0 deletions