summaryrefslogtreecommitdiff
path: root/net/mac80211/tx.c
diff options
context:
space:
mode:
authorEric Dumazet <dada1@cosmosbay.com>2007-09-15 10:55:54 -0700
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 16:49:25 -0700
commit39c90ece7565f5c47110c2fa77409d7a9478bd5b (patch)
tree220bf734ed470024901226675550501d45192f0e /net/mac80211/tx.c
parentdac24ab396fc92985060d5cb3c467d2d0ffc0c20 (diff)
downloadlwn-39c90ece7565f5c47110c2fa77409d7a9478bd5b.tar.gz
lwn-39c90ece7565f5c47110c2fa77409d7a9478bd5b.zip
[IPV4]: Convert rt_check_expire() from softirq processing to workqueue.
On loaded/big hosts, rt_check_expire() if of litle use, because it generally breaks out of its main loop because of a jiffies change. It can take a long time (read : timer invocations) to actually scan the whole hash table, freeing unused entries. Converting it to use a workqueue instead of softirq is a nice move because we can allow rt_check_expire() to do the scan it is supposed to do, without hogging the CPU. This has an impact on the average number of entries in cache, reducing ram usage. Cache is more responsive to parameter changes (/proc/sys/net/ipv4/route/gc_timeout and /proc/sys/net/ipv4/route/gc_interval) Note: Maybe the default value of gc_interval (60 seconds) is too high, since this means we actually need 5 (300/60) invocations to scan the whole table. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mac80211/tx.c')
0 files changed, 0 insertions, 0 deletions