diff options
author | Eric Dumazet <edumazet@google.com> | 2016-03-14 15:40:00 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-03-14 19:38:09 -0400 |
commit | acffb584cda7069b0c2c83045503ccd07516a891 (patch) | |
tree | 342e4e51d76076603adba31d93313f436cf67709 /net/ipv4/inet_diag.c | |
parent | e3ebd894f084255fde19116955ba7054858ff5d6 (diff) | |
download | linux-acffb584cda7069b0c2c83045503ccd07516a891.tar.bz2 |
net: diag: add a scheduling point in inet_diag_dump_icsk()
On loaded TCP servers, looking at millions of sockets can hold
cpu for many seconds, if the lookup condition is very narrow.
(eg : ss dst 1.2.3.4 )
Better add a cond_resched() to allow other processes to access
the cpu.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/inet_diag.c')
-rw-r--r-- | net/ipv4/inet_diag.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/inet_diag.c b/net/ipv4/inet_diag.c index 50c0d96b8441..5fdb02f5598e 100644 --- a/net/ipv4/inet_diag.c +++ b/net/ipv4/inet_diag.c @@ -879,6 +879,7 @@ next_normal: } spin_unlock_bh(lock); + cond_resched(); } done: |