On Wed, Aug 16, 2017 at 1:14 AM, Chris Mi <[email protected]> wrote: > Currently, all filters with the same priority are linked in a doubly > linked list. Every filter should have a unique handle. To make the > handle unique, we need to iterate the list every time to see if the > handle exists or not when inserting a new filter. It is time-consuming. > For example, it takes about 5m3.169s to insert 64K rules. > > This patch changes cls_flower to use IDR. With this patch, it > takes about 0m1.127s to insert 64K rules. The improvement is huge. > > But please note that in this testing, all filters share the same action. > If every filter has a unique action, that is another bottleneck. > Follow-up patch in this patchset addresses that. > > Signed-off-by: Chris Mi <[email protected]> > Signed-off-by: Jiri Pirko <[email protected]>
While you are on it, why only migrate cls_flower? I am sure we have similar handle generators in other tc flters too. Also, _possibly_ we may make the tc filter handle generator generic? Thanks.
