All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Ahern <dsahern@gmail.com>
To: James Prestwood <prestwoj@gmail.com>, netdev@vger.kernel.org
Cc: davem@davemloft.net, kuba@kernel.org, corbet@lwn.net,
	yoshfuji@linux-ipv6.org, dsahern@kernel.org, roopa@nvidia.com,
	daniel@iogearbox.net, vladimir.oltean@nxp.com, idosch@nvidia.com,
	nikolay@nvidia.com, yajun.deng@linux.dev, zhutong@amazon.com,
	johannes@sipsolutions.net, jouni@codeaurora.org
Subject: Re: [RESEND PATCH v7 2/3] net: ndisc: introduce ndisc_evict_nocarrier sysctl parameter
Date: Tue, 26 Oct 2021 08:52:45 -0600	[thread overview]
Message-ID: <4dd34a92-bfcf-27ad-2d32-c93f7a9082a9@gmail.com> (raw)
In-Reply-To: <20211025164547.1097091-3-prestwoj@gmail.com>

On 10/25/21 10:45 AM, James Prestwood wrote:
> In most situations the neighbor discovery cache should be cleared on a
> NOCARRIER event which is currently done unconditionally. But for wireless
> roams the neighbor discovery cache can and should remain intact since
> the underlying network has not changed.
> 
> This patch introduces a sysctl option ndisc_evict_nocarrier which can
> be disabled by a wireless supplicant during a roam. This allows packets
> to be sent after a roam immediately without having to wait for
> neighbor discovery.
> 
> A user reported roughly a 1 second delay after a roam before packets
> could be sent out (note, on IPv4). This delay was due to the ARP
> cache being cleared. During testing of this same scenario using IPv6
> no delay was noticed, but regardless there is no reason to clear
> the ndisc cache for wireless roams.
> 
> Signed-off-by: James Prestwood <prestwoj@gmail.com>
> ---
>  Documentation/networking/ip-sysctl.rst |  9 +++++++++
>  include/linux/ipv6.h                   |  1 +
>  include/uapi/linux/ipv6.h              |  1 +
>  net/ipv6/addrconf.c                    | 12 ++++++++++++
>  net/ipv6/ndisc.c                       | 12 +++++++++++-
>  5 files changed, 34 insertions(+), 1 deletion(-)
> 

Reviewed-by: David Ahern <dsahern@kernel.org>



  reply	other threads:[~2021-10-26 14:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-25 16:45 [RESEND PATCH v7 0/3] Make neighbor eviction controllable by userspace James Prestwood
2021-10-25 16:45 ` [RESEND PATCH v7 1/3] net: arp: introduce arp_evict_nocarrier sysctl parameter James Prestwood
2021-10-26 14:50   ` David Ahern
2021-10-25 16:45 ` [RESEND PATCH v7 2/3] net: ndisc: introduce ndisc_evict_nocarrier " James Prestwood
2021-10-26 14:52   ` David Ahern [this message]
2021-10-25 16:45 ` [RESEND PATCH v7 3/3] selftests: net: add arp_ndisc_evict_nocarrier James Prestwood
2021-10-26 14:57   ` 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=4dd34a92-bfcf-27ad-2d32-c93f7a9082a9@gmail.com \
    --to=dsahern@gmail.com \
    --cc=corbet@lwn.net \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=dsahern@kernel.org \
    --cc=idosch@nvidia.com \
    --cc=johannes@sipsolutions.net \
    --cc=jouni@codeaurora.org \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nikolay@nvidia.com \
    --cc=prestwoj@gmail.com \
    --cc=roopa@nvidia.com \
    --cc=vladimir.oltean@nxp.com \
    --cc=yajun.deng@linux.dev \
    --cc=yoshfuji@linux-ipv6.org \
    --cc=zhutong@amazon.com \
    /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.