All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: David Ahern <dsahern@kernel.org>
Cc: netdev@vger.kernel.org, David Ahern <dsahern@gmail.com>
Subject: Re: [PATCH iproute2-next] Improve batch times by caching link lookups
Date: Mon, 7 Jan 2019 13:31:55 -0800	[thread overview]
Message-ID: <20190107133155.6da96d55@hermes.lan> (raw)
In-Reply-To: <20190107204130.32144-1-dsahern@kernel.org>

On Mon,  7 Jan 2019 12:41:30 -0800
David Ahern <dsahern@kernel.org> wrote:

> From: David Ahern <dsahern@gmail.com>
> 
> ip route uses ll_name_to_index to convert the user given device name to an
> index. At the moment ll_name_to_index uses if_nametoindex which is ioctl
> based and does not cache the result. When using a batch file this means
> the same device lookups can be done repeatedly adding unnecessary overhead
> (socket + ioctl call for each device lookup).
> 
> Add a new function, ll_link_get, to send a netlink based RTM_GETLINK. If
> successful, cache the result in idx_head and name_head so future lookups
> can re-use the entry.
> 
> With this change the time to install routes via a batch file is reduced
> from 30.7 seconds to 17.6 seconds (720,022 routes with 2 ecmp nexthops
> where the nexthop device is given).
> 
> Signed-off-by: David Ahern <dsahern@gmail.com>

What if a ip command in the batch does a rename?

  parent reply	other threads:[~2019-01-07 21:31 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-07 20:41 [PATCH iproute2-next] Improve batch times by caching link lookups David Ahern
2019-01-07 20:57 ` Eric Dumazet
2019-01-07 20:58   ` David Ahern
2019-01-07 21:06     ` Eric Dumazet
2019-01-07 21:16       ` David Ahern
2019-01-07 21:31 ` Stephen Hemminger [this message]
2019-01-07 21:52   ` David Ahern

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190107133155.6da96d55@hermes.lan \
    --to=stephen@networkplumber.org \
    --cc=dsahern@gmail.com \
    --cc=dsahern@kernel.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.