Thread (15 messages) flat view 15 messages, 5 authors, 2011-10-17

Re: [PATCH] dev: use name hash for dev_seq_ops.

From: Mihai Maruseac <hidden>
Date: 2011-10-08 07:22:49
Also in: lkml

On Fri, Oct 7, 2011 at 7:24 PM, Stephen Hemminger [off-list ref] wrote:
On Fri,  7 Oct 2011 18:20:49 +0300
Mihai Maruseac [off-list ref] wrote:
quoted
Instead of using the dev->next chain and trying to resync at each call to
dev_seq_start, use this hash and store bucket number and bucket offset in
seq->private field.

Tests revealed the following results for ifconfig > /dev/null
      * 1000 interfaces:
              * 0.114s without patch
              * 0.020s with patch
      * 3000 interfaces:
              * 0.489s without patch
              * 0.048s with patch
      * 5000 interfaces:
              * 1.363s without patch
              * 0.131s with patch

As one can notice the improvement is of 1 order of magnitude.
Good idea,
This will change the ordering of entries in /proc which may upset
some program, not a critical flaw but worth noting.

Rather than recording the bucket and offset of last entry, another
alternative would be to just record the ifindex.

Also ifconfig is considered deprecated and replaced by ip commands
for general use.
Thanks,
This is a patch from a series of improvements to both the ifconfig and
ip commands. The ip part will come later, after being properly
implemented and tested.

-- 
Mihai
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help