Re: [PATCH net-next v5 4/4] net: add per-netns sysctl for devmem autorelease

From: Mina Almasry

Date: Tue Oct 28 2025 - 22:10:12 EST


On Tue, Oct 28, 2025 at 2:14 PM Bobby Eshleman <bobbyeshleman@xxxxxxxxx> wrote:
>
> On Mon, Oct 27, 2025 at 06:22:16PM -0700, Mina Almasry wrote:
> > On Thu, Oct 23, 2025 at 2:00 PM Bobby Eshleman <bobbyeshleman@xxxxxxxxx> wrote:
>
> [...]
>
> > > diff --git a/net/core/devmem.c b/net/core/devmem.c
> > > index 8f3199fe0f7b..9cd6d93676f9 100644
> > > --- a/net/core/devmem.c
> > > +++ b/net/core/devmem.c
> > > @@ -331,7 +331,7 @@ net_devmem_bind_dmabuf(struct net_device *dev,
> > > goto err_free_chunks;
> > >
> > > list_add(&binding->list, &priv->bindings);
> > > - binding->autorelease = true;
> > > + binding->autorelease = dev_net(dev)->core.sysctl_devmem_autorelease;
> > >
> >
> > Do you need to READ_ONCE this and WRITE_ONCE the write site? Or is
> > that silly for a u8? Maybe better be safe.
>
> Probably worth it to be safe.
> >
> > Could we not make this an optional netlink argument? I thought that
> > was a bit nicer than a sysctl.
> >
> > Needs a doc update.
> >
> >
> > -- Thanks, Mina
>
> Sounds good, I'll change to nl for the next rev. Thanks for the review!
>

Sorry to pile the requests, but any chance we can have the kselftest
improved to cover the default case and the autorelease=on case?

I'm thinking out loud here: if we make autorelease a property of the
socket like I say in the other thread, does changing the value at
runtime blow everything up. My thinking is that no, what's important
is that the sk->devmem_info.autorelease **never** gets toggled for any
active sockets, but as long as the value is constant, everything
should work fine, yes?

--
Thanks,
Mina