]> git.baikalelectronics.ru Git - kernel.git/commit
net_sched: gen_estimator: extend pps limit
authorEric Dumazet <edumazet@google.com>
Thu, 2 Jul 2015 13:57:19 +0000 (15:57 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 8 Jul 2015 20:59:20 +0000 (13:59 -0700)
commit1a068c1c5e39a88d2691a03ceb7f072c60d4ee2f
tree27edbc362bf93df02abbf7f685d94d94f0e93592
parentdd26693a5152a2836601f850ccf53a8b0442ea6c
net_sched: gen_estimator: extend pps limit

rate estimators are limited to 4 Mpps, which was fine years ago, but
too small with current hardware generation.

Lets use 2^5 scaling instead of 2^10 to get 128 Mpps new limit.

On 64bit arch, use an "unsigned long" for temp storage and remove limit.
(We do not expect 32bit arches to be able to reach this point)

Tested:

tc -s -d filter sh dev eth0 parent ffff:

filter protocol ip pref 1 u32
filter protocol ip pref 1 u32 fh 800: ht divisor 1
filter protocol ip pref 1 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 1:15
  match 07000000/ff000000 at 12
action order 1: gact action drop
 random type none pass val 0
 index 1 ref 1 bind 1 installed 166 sec
  Action statistics:
Sent 39734251496 bytes 863788076 pkt (dropped 863788117, overlimits 0 requeues 0)
rate 4067Mbit 11053596pps backlog 0b 0p requeues 0

Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/gen_estimator.c