diff --git a/net/netfilter/nf_conntrack_core.c index ff901a2b4..4ca315e8b 100644 --- a/net/netfilter/nf_conntrack_core.c +++ b/net/netfilter/nf_conntrack_core.c @@ -1517,6 +1517,7 @@ static void gc_worker(struct work_struct *work) struct conntrack_gc_work *gc_work; unsigned int expired_count = 0; unsigned long next_run; + bool early_break = false; unsigned int bucket_count = 0; s32 delta_time; long count; @@ -1561,13 +1562,18 @@ static void gc_worker(struct work_struct *work) tmp = nf_ct_tuplehash_to_ctrack(h); entry_count++; - if (entry_count > 100) break; + if (entry_count > 1000) { early_break = true;