All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: Jacob Keller <jacob.e.keller@intel.com>
Cc: <jiri@resnulli.us>, <leon@kernel.org>, <netdev@vger.kernel.org>
Subject: Re: [RFC net-next 04/10] devlink: always check if the devlink instance is registered
Date: Mon, 19 Dec 2022 13:55:41 -0800	[thread overview]
Message-ID: <20221219135541.6e0a7cfd@kernel.org> (raw)
In-Reply-To: <84151471-4404-d944-417f-2982569f44da@intel.com>

On Mon, 19 Dec 2022 09:48:54 -0800 Jacob Keller wrote:
> On 12/16/2022 5:19 PM, Jakub Kicinski wrote:
> > Always check under the instance lock whether the devlink instance
> > is still / already registered.
> 
> Ok. So now the reference ensures less about whats valid. It guarantees a
> lock but doesn't ensure that the devlink remains registered unless you
> acquire the lock and check that the devlink is alive under lock now?

Correct.

> > This is a no-op for the most part, as the unregistration path currently
> > waits for all references. On the init path, however, we may temporarily
> > open up a race with netdev code, if netdevs are registered before the
> > devlink instance. This is temporary, the next change fixes it, and this
> > commit has been split out for the ease of review.
> >   
> 
> This means you're adding the problem here, but its fixed in next commit..?

Yes, I can squash when posting for applying, but TBH I think the clarity
of the changes outweighs the tiny and transient race.

  reply	other threads:[~2022-12-19 21:55 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-17  1:19 [RFC net-next 00/10] devlink: remove the wait-for-references on unregister Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 01/10] devlink: bump the instance index directly when iterating Jakub Kicinski
2023-01-02 13:24   ` Jiri Pirko
2023-01-02 22:48     ` Jakub Kicinski
2023-01-03  7:35       ` Jiri Pirko
2023-01-04  2:31         ` Jakub Kicinski
2023-01-02 22:56     ` Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 02/10] devlink: update the code in netns move to latest helpers Jakub Kicinski
2023-01-02 13:45   ` Jiri Pirko
2022-12-17  1:19 ` [RFC net-next 03/10] devlink: protect devlink->dev by the instance lock Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 04/10] devlink: always check if the devlink instance is registered Jakub Kicinski
2022-12-19 17:48   ` Jacob Keller
2022-12-19 21:55     ` Jakub Kicinski [this message]
2022-12-19 22:08       ` Jacob Keller
2023-01-02 13:58   ` Jiri Pirko
2023-01-02 23:05     ` Jakub Kicinski
2023-01-03  9:26       ` Jiri Pirko
2023-01-04  2:49         ` Jakub Kicinski
2023-01-04 16:14           ` Jiri Pirko
2023-01-02 14:57   ` Jiri Pirko
2023-01-02 15:12     ` Jiri Pirko
2023-01-02 23:16     ` Jakub Kicinski
2023-01-03  9:30       ` Jiri Pirko
2023-01-03 12:26   ` Jiri Pirko
2023-01-04  2:50     ` Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 05/10] devlink: remove the registration guarantee of references Jakub Kicinski
2022-12-19 17:56   ` Jacob Keller
2022-12-19 22:02     ` Jakub Kicinski
2022-12-19 22:14       ` Jacob Keller
2022-12-19 22:31         ` Jakub Kicinski
2023-01-02 14:18       ` Jiri Pirko
2023-01-02 14:32   ` Jiri Pirko
2023-01-02 23:18     ` Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 06/10] devlink: don't require setting features before registration Jakub Kicinski
2023-01-02 15:25   ` Jiri Pirko
2023-01-02 23:24     ` Jakub Kicinski
2023-01-02 23:32       ` Jakub Kicinski
2023-01-03  9:46         ` Jiri Pirko
2022-12-17  1:19 ` [RFC net-next 07/10] netdevsim: rename a label Jakub Kicinski
2022-12-19 18:01   ` Jacob Keller
2022-12-17  1:19 ` [RFC net-next 08/10] netdevsim: move devlink registration under the instance lock Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 09/10] devlink: allow registering parameters after the instance Jakub Kicinski
2022-12-17  1:19 ` [RFC net-next 10/10] netdevsim: register devlink instance before sub-objects Jakub Kicinski
2023-01-02 13:34   ` Jiri Pirko
2023-01-02 23:25     ` Jakub Kicinski
2023-01-03  9:51       ` Jiri Pirko
2023-01-04  2:52         ` Jakub Kicinski
2022-12-19 17:38 ` [RFC net-next 00/10] devlink: remove the wait-for-references on unregister Jacob Keller
2022-12-19 22:10   ` Jakub Kicinski
2022-12-19 22:16     ` Jacob Keller

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=20221219135541.6e0a7cfd@kernel.org \
    --to=kuba@kernel.org \
    --cc=jacob.e.keller@intel.com \
    --cc=jiri@resnulli.us \
    --cc=leon@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.