dst: call cond_resched() in dst_gc_task()
authorEric Dumazet <eric.dumazet@gmail.com>
Mon, 8 Feb 2010 23:00:39 +0000 (15:00 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 8 Feb 2010 23:00:39 +0000 (15:00 -0800)
commit2fc1b5dd99f66d93ffc23fd8df82d384c1a354c8
tree7a0cdb9d0c683a7f7883f96a903eda997c90e2df
parentd696c7bdaa55e2208e56c6f98e6bc1599f34286d
dst: call cond_resched() in dst_gc_task()

Kernel bugzilla #15239

On some workloads, it is quite possible to get a huge dst list to
process in dst_gc_task(), and trigger soft lockup detection.

Fix is to call cond_resched(), as we run in process context.

Reported-by: Pawel Staszewski <pstaszewski@itcare.pl>
Tested-by: Pawel Staszewski <pstaszewski@itcare.pl>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dst.c