The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Maxwell Doose <m32285159@gmail.com>
To: Jan Kara <jack@suse.cz>
Cc: Christian Brauner <brauner@kernel.org>,
	Al Viro <viro@zeniv.linux.org.uk>,
	Jeff Layton <jlayton@kernel.org>, Kees Cook <kees@kernel.org>,
	Mateusz Guzik <mjguzik@gmail.com>,
	open list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] fs: efs: namei: Use __free() over manual resource management
Date: Tue, 9 Jun 2026 10:15:53 -0500	[thread overview]
Message-ID: <20260609101553.3e679b6f@linuxescape> (raw)
In-Reply-To: <zubqudmf4ej7phwdetb4bh7w7kjds36luupbwdebojtroqsuc4@x3xidsw4mmmr>

On Tue, 9 Jun 2026 11:58:40 +0200
Jan Kara <jack@suse.cz> wrote:

> On Sat 06-06-26 21:58:15, Maxwell Doose wrote:
> > On Sat, Jun 6, 2026 at 1:20 PM Maxwell Doose <m32285159@gmail.com> wrote:  
> > >
> > > Define a __free() for brelse() called brelease.
> > >
> > > The current code uses manual management of the file buffer heads. Remove
> > > manual brelse statements and initialize bh with __free(brelease)
> > > which removes and modernizes code.
> > >
> > > Signed-off-by: Maxwell Doose <m32285159@gmail.com>
> > > ---
> > >  fs/efs/namei.c | 10 ++++------
> > >  1 file changed, 4 insertions(+), 6 deletions(-)
> > >
> > > diff --git a/fs/efs/namei.c b/fs/efs/namei.c
> > > index 38961ee1d1af..ce7794d55e47 100644
> > > --- a/fs/efs/namei.c
> > > +++ b/fs/efs/namei.c
> > > @@ -8,15 +8,15 @@
> > >   */
> > >
> > >  #include <linux/buffer_head.h>
> > > +#include <linux/cleanup.h>
> > >  #include <linux/string.h>
> > >  #include <linux/exportfs.h>
> > >  #include "efs.h"
> > >
> > > +DEFINE_FREE(brelease, struct buffer_head *, if (_T) brelse(_T))
> > >
> > >  static efs_ino_t efs_find_entry(struct inode *inode, const char *name, int len)
> > >  {
> > > -       struct buffer_head *bh;
> > > -
> > >         int                     slot, namelen;
> > >         char                    *nameptr;
> > >         struct efs_dir          *dirblock;
> > > @@ -30,7 +30,8 @@ static efs_ino_t efs_find_entry(struct inode *inode, const char *name, int len)
> > >
> > >         for(block = 0; block < inode->i_blocks; block++) {
> > >
> > > -               bh = sb_bread(inode->i_sb, efs_bmap(inode, block));
> > > +               struct buffer_head *bh __free(brelease) = sb_bread(inode->i_sb,
> > > +                                                                  bfs_bmap(inode, block));  
> > 
> > Made a mistake here while moving :( should be efs_bmap(). Can send a
> > v2 if preferred.  
> 
> Well, that happens but that also shows you didn't even try to compile the
> thing before sending the patch. This is not how the kernel development
> should work, let alone maintenance... Please test your changes before
> sending them.
>

I did and added the fix for it but I think I forgot to amend my commit
:(

>
> Separate thing is that I don't think changes like this to a dead filesystem
> as EFS are really useful. So as others have suggested the most useful
> action you could do for EFS would be to add deprecation notice on kconfig
> and print deprecation message on mount (like we did with other filesystems
> we removed). Set the removal date to the end of 2026 and see if some user
> pops up. Because I suspect nobody used this code for years.
> 

Alright then. If that's the consensus then I can do that.

-- 
best regards,
max

      reply	other threads:[~2026-06-09 15:15 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-06 18:18 [PATCH] fs: efs: namei: Use __free() over manual resource management Maxwell Doose
2026-06-07  2:58 ` Maxwell Doose
2026-06-09  9:58   ` Jan Kara
2026-06-09 15:15     ` Maxwell Doose [this message]

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=20260609101553.3e679b6f@linuxescape \
    --to=m32285159@gmail.com \
    --cc=brauner@kernel.org \
    --cc=jack@suse.cz \
    --cc=jlayton@kernel.org \
    --cc=kees@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mjguzik@gmail.com \
    --cc=viro@zeniv.linux.org.uk \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox