From: Jakub Kicinski <kuba@kernel.org>
To: Sabrina Dubroca <sd@queasysnail.net>
Cc: Paolo Abeni <pabeni@redhat.com>,
davem@davemloft.net, netdev@vger.kernel.org, edumazet@google.com,
mkubecek@suse.cz, lorenzo@kernel.org
Subject: Re: [PATCH net-next 1/2] net: store netdevs in an xarray
Date: Tue, 25 Jul 2023 12:45:59 -0700 [thread overview]
Message-ID: <20230725124559.1dc930cd@kernel.org> (raw)
In-Reply-To: <ZMAMY0MTj7PbJazi@hog>
On Tue, 25 Jul 2023 19:54:43 +0200 Sabrina Dubroca wrote:
> > > And if that's not enough we can make the iteration index ulong
> > > (i.e. something separate from ifindex as ifindex is hardwired to 31b
> > > by uAPI).
> >
> > We can get the create, delete ordering with this or the list, but the
> > inverse theoretical case of delete, create ordering can't be covered.
> > A case where user wants to make sure at most one device is visible.
> >
> > I'm not sure how much we should care about this. The basic hash table
> > had the very real problem of hiding devices which were there *before
> > and after* the dump.
> >
> > Inconsistent info on devices which were created / deleted *during* the
> > dump seems to me like something that's best handled with notifications.
> >
> > I'm not sure whether we should set the inconsistency mark on the dump
> > when del/add operation happened in the meantime either, as
> > the probability that the user space will care is minuscule.
>
> The inconsistent dump mark may be more relevant for changes in device
> properties than link creation/removal. If the MTU on 2 devices changes
> while the dump is running (one low ifindex, one high ifindex), we'll
> see the old MTU for the first device and the new MTU for the 2nd. Or
> by adding/removing bridge ports while the dump runs, I can make it
> look like bridge0 has mulitple ports with the same port_no.
>
> I don't know how likely those cases are, but if they happen I think
> they'd be more confusing than a missing/extra device.
I believe that for netdevs dev_base_seq_inc() is used to indicate
a change. It's only called when listing / unlisting devices so
the changes to device config are already not covered :(
next prev parent reply other threads:[~2023-07-25 19:46 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-22 1:42 [PATCH net-next 0/2] net: store netdevs in an xarray Jakub Kicinski
2023-07-22 1:42 ` [PATCH net-next 1/2] " Jakub Kicinski
2023-07-22 1:47 ` Jakub Kicinski
2023-07-24 8:18 ` Paolo Abeni
2023-07-24 15:41 ` Jakub Kicinski
2023-07-24 16:23 ` Paolo Abeni
2023-07-24 17:27 ` Jakub Kicinski
2023-07-24 19:07 ` Jakub Kicinski
2023-07-25 11:11 ` Paolo Abeni
2023-07-25 16:56 ` Jakub Kicinski
2023-07-25 17:54 ` Sabrina Dubroca
2023-07-25 19:45 ` Jakub Kicinski [this message]
2023-07-24 19:09 ` Leon Romanovsky
2023-07-22 1:42 ` [PATCH net-next 2/2] net: convert some netlink netdev iterators to depend on the xarray Jakub Kicinski
2023-07-24 15:28 ` [PATCH net-next 0/2] net: store netdevs in an xarray Simon Horman
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=20230725124559.1dc930cd@kernel.org \
--to=kuba@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=lorenzo@kernel.org \
--cc=mkubecek@suse.cz \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=sd@queasysnail.net \
/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.