public inbox for linux-fsdevel@vger.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH v4 27/30] fs: Add iput() cleanup helper
       [not found] ` <20250108154338.1129069-28-mic@digikod.net>
@ 2025-01-13 11:15   ` Mickaël Salaün
  2025-01-13 16:45     ` Al Viro
  0 siblings, 1 reply; 2+ messages in thread
From: Mickaël Salaün @ 2025-01-13 11:15 UTC (permalink / raw)
  To: Al Viro, Christian Brauner, Jeff Layton, Josef Bacik
  Cc: Eric Paris, Paul Moore, Günther Noack, Serge E . Hallyn,
	Ben Scarlato, Casey Schaufler, Charles Zaffery, Daniel Burgener,
	Francis Laniel, James Morris, Jann Horn, Jeff Xu,
	Jorge Lucangeli Obes, Kees Cook, Konstantin Meskhidze,
	Matt Bobrowski, Mikhail Ivanov, Phil Sutter, Praveen K Paladugu,
	Robert Salvet, Shervin Oloumi, Song Liu, Tahera Fahimi,
	Tyler Hicks, audit, linux-kernel, linux-security-module, Al Viro,
	Christian Brauner, Jeff Layton, Josef Bacik, linux-fsdevel

Al, Christian, this standalone patch could be useful to others.  Feel
free to pick it in your tree.

On Wed, Jan 08, 2025 at 04:43:35PM +0100, Mickaël Salaün wrote:
> Add a simple scope-based helper to put an inode reference, similar to
> the fput() helper.
> 
> This is used in a following commit.
> 
> Cc: Al Viro <viro@zeniv.linux.org.uk>
> Cc: Christian Brauner <brauner@kernel.org>
> Cc: Jeff Layton <jlayton@kernel.org>
> Cc: Josef Bacik <josef@toxicpanda.com>
> Signed-off-by: Mickaël Salaün <mic@digikod.net>
> Link: https://lore.kernel.org/r/20250108154338.1129069-28-mic@digikod.net
> ---
> 
> Changes since v3:
> - New patch.
> ---
>  include/linux/fs.h | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index 7e29433c5ecc..bd5a28b0871f 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -47,6 +47,8 @@
>  #include <linux/rw_hint.h>
>  #include <linux/file_ref.h>
>  #include <linux/unicode.h>
> +#include <linux/cleanup.h>
> +#include <linux/err.h>
>  
>  #include <asm/byteorder.h>
>  #include <uapi/linux/fs.h>
> @@ -2698,6 +2700,8 @@ extern void iput(struct inode *);
>  int inode_update_timestamps(struct inode *inode, int flags);
>  int generic_update_time(struct inode *, int);
>  
> +DEFINE_FREE(iput, struct inode *, if (!IS_ERR_OR_NULL(_T)) iput(_T))
> +
>  /* /sys/fs */
>  extern struct kobject *fs_kobj;
>  
> @@ -3108,8 +3112,6 @@ static inline bool is_dot_dotdot(const char *name, size_t len)
>  		(len == 1 || (len == 2 && name[1] == '.'));
>  }
>  
> -#include <linux/err.h>
> -
>  /* needed for stackable file system support */
>  extern loff_t default_llseek(struct file *file, loff_t offset, int whence);
>  
> -- 
> 2.47.1
> 
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH v4 27/30] fs: Add iput() cleanup helper
  2025-01-13 11:15   ` [PATCH v4 27/30] fs: Add iput() cleanup helper Mickaël Salaün
@ 2025-01-13 16:45     ` Al Viro
  0 siblings, 0 replies; 2+ messages in thread
From: Al Viro @ 2025-01-13 16:45 UTC (permalink / raw)
  To: Mickaël Salaün
  Cc: Christian Brauner, Jeff Layton, Josef Bacik, Eric Paris,
	Paul Moore, Günther Noack, Serge E . Hallyn, Ben Scarlato,
	Casey Schaufler, Charles Zaffery, Daniel Burgener, Francis Laniel,
	James Morris, Jann Horn, Jeff Xu, Jorge Lucangeli Obes, Kees Cook,
	Konstantin Meskhidze, Matt Bobrowski, Mikhail Ivanov, Phil Sutter,
	Praveen K Paladugu, Robert Salvet, Shervin Oloumi, Song Liu,
	Tahera Fahimi, Tyler Hicks, audit, linux-kernel,
	linux-security-module, linux-fsdevel

On Mon, Jan 13, 2025 at 12:15:05PM +0100, Mickaël Salaün wrote:
> Al, Christian, this standalone patch could be useful to others.  Feel
> free to pick it in your tree.

Bad idea - we'll end up having to treat uses of that as a serious red flag;
it's too easy to end up with lifetime extended too far.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-01-13 16:45 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20250108154338.1129069-1-mic@digikod.net>
     [not found] ` <20250108154338.1129069-28-mic@digikod.net>
2025-01-13 11:15   ` [PATCH v4 27/30] fs: Add iput() cleanup helper Mickaël Salaün
2025-01-13 16:45     ` Al Viro

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox