All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: Allison Henderson <allison.henderson@oracle.com>
Cc: linux-xfs@vger.kernel.org
Subject: Re: [PATCH v21 11/13] xfs: Add delattr mount option
Date: Thu, 8 Jul 2021 21:14:07 -0700	[thread overview]
Message-ID: <20210709041407.GP11588@locust> (raw)
In-Reply-To: <20210707222111.16339-12-allison.henderson@oracle.com>

On Wed, Jul 07, 2021 at 03:21:09PM -0700, Allison Henderson wrote:
> This patch adds a mount option to enable delayed attributes. Eventually
> this can be removed when delayed attrs becomes permanent.
> 
> Signed-off-by: Allison Henderson <allison.henderson@oracle.com>
> ---
>  fs/xfs/libxfs/xfs_attr.h | 2 +-
>  fs/xfs/xfs_mount.h       | 1 +
>  fs/xfs/xfs_super.c       | 6 +++++-
>  fs/xfs/xfs_xattr.c       | 2 ++
>  4 files changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/xfs/libxfs/xfs_attr.h b/fs/xfs/libxfs/xfs_attr.h
> index 859dbef..5141958 100644
> --- a/fs/xfs/libxfs/xfs_attr.h
> +++ b/fs/xfs/libxfs/xfs_attr.h
> @@ -30,7 +30,7 @@ struct xfs_attr_list_context;
>  
>  static inline bool xfs_hasdelattr(struct xfs_mount *mp)
>  {
> -	return false;
> +	return mp->m_flags & XFS_MOUNT_DELATTR;
>  }
>  
>  /*
> diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h
> index 66a47f5..2945868 100644
> --- a/fs/xfs/xfs_mount.h
> +++ b/fs/xfs/xfs_mount.h
> @@ -257,6 +257,7 @@ typedef struct xfs_mount {
>  #define XFS_MOUNT_NOATTR2	(1ULL << 25)	/* disable use of attr2 format */
>  #define XFS_MOUNT_DAX_ALWAYS	(1ULL << 26)
>  #define XFS_MOUNT_DAX_NEVER	(1ULL << 27)
> +#define XFS_MOUNT_DELATTR	(1ULL << 28)	/* enable delayed attributes */
>  
>  /*
>   * Max and min values for mount-option defined I/O
> diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
> index c30b077..1a7edae 100644
> --- a/fs/xfs/xfs_super.c
> +++ b/fs/xfs/xfs_super.c
> @@ -94,7 +94,7 @@ enum {
>  	Opt_filestreams, Opt_quota, Opt_noquota, Opt_usrquota, Opt_grpquota,
>  	Opt_prjquota, Opt_uquota, Opt_gquota, Opt_pquota,
>  	Opt_uqnoenforce, Opt_gqnoenforce, Opt_pqnoenforce, Opt_qnoenforce,
> -	Opt_discard, Opt_nodiscard, Opt_dax, Opt_dax_enum,
> +	Opt_discard, Opt_nodiscard, Opt_dax, Opt_dax_enum, Opt_delattr
>  };
>  
>  static const struct fs_parameter_spec xfs_fs_parameters[] = {
> @@ -139,6 +139,7 @@ static const struct fs_parameter_spec xfs_fs_parameters[] = {
>  	fsparam_flag("nodiscard",	Opt_nodiscard),
>  	fsparam_flag("dax",		Opt_dax),
>  	fsparam_enum("dax",		Opt_dax_enum, dax_param_enums),
> +	fsparam_flag("delattr",		Opt_delattr),
>  	{}
>  };
>  
> @@ -1277,6 +1278,9 @@ xfs_fs_parse_param(
>  		xfs_mount_set_dax_mode(parsing_mp, result.uint_32);
>  		return 0;
>  #endif
> +	case Opt_delattr:
> +		parsing_mp->m_flags |= XFS_MOUNT_DELATTR;
> +		return 0;

Can we restrict this to CONFIG_XFS_DEBUG=y or at least log the usual

"EXPERIMENTAL logged xattrs feature in use, use at your orkgs!"

message at mount?

--D

>  	/* Following mount options will be removed in September 2025 */
>  	case Opt_ikeep:
>  		xfs_fs_warn_deprecated(fc, param, XFS_MOUNT_IKEEP, true);
> diff --git a/fs/xfs/xfs_xattr.c b/fs/xfs/xfs_xattr.c
> index 66b334f..7335423 100644
> --- a/fs/xfs/xfs_xattr.c
> +++ b/fs/xfs/xfs_xattr.c
> @@ -8,6 +8,8 @@
>  #include "xfs_shared.h"
>  #include "xfs_format.h"
>  #include "xfs_log_format.h"
> +#include "xfs_trans_resv.h"
> +#include "xfs_mount.h"
>  #include "xfs_da_format.h"
>  #include "xfs_trans_resv.h"
>  #include "xfs_mount.h"
> -- 
> 2.7.4
> 

  reply	other threads:[~2021-07-09  4:14 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-07 22:20 [PATCH v21 00/13] Delayed Attributes Allison Henderson
2021-07-07 22:20 ` [PATCH v21 01/13] xfs: Return from xfs_attr_set_iter if there are no more rmtblks to process Allison Henderson
2021-07-09  4:05   ` Darrick J. Wong
2021-07-09 19:56     ` Allison Henderson
2021-07-07 22:21 ` [PATCH v21 02/13] xfs: Add state machine tracepoints Allison Henderson
2021-07-07 22:21 ` [PATCH v21 03/13] xfs: Rename __xfs_attr_rmtval_remove Allison Henderson
2021-07-07 22:21 ` [PATCH v21 04/13] xfs: Handle krealloc errors in xlog_recover_add_to_cont_trans Allison Henderson
2021-07-09  4:09   ` Darrick J. Wong
2021-07-09 19:56     ` Allison Henderson
2021-07-07 22:21 ` [PATCH v21 05/13] xfs: Set up infrastructure for deferred attribute operations Allison Henderson
2021-07-10  0:39   ` Darrick J. Wong
2021-07-13 18:52     ` Allison Henderson
2021-07-07 22:21 ` [PATCH v21 06/13] xfs: Implement attr logging and replay Allison Henderson
2021-07-10  1:08   ` Darrick J. Wong
2021-07-13 18:52     ` Allison Henderson
2021-07-07 22:21 ` [PATCH v21 07/13] RFC xfs: Skip flip flags for delayed attrs Allison Henderson
2021-07-07 22:21 ` [PATCH v21 08/13] xfs: Add xfs_attr_set_deferred and xfs_attr_remove_deferred Allison Henderson
2021-07-07 22:21 ` [PATCH v21 09/13] xfs: Remove unused xfs_attr_*_args Allison Henderson
2021-07-07 22:21 ` [PATCH v21 10/13] xfs: Add delayed attributes error tag Allison Henderson
2021-07-07 22:21 ` [PATCH v21 11/13] xfs: Add delattr mount option Allison Henderson
2021-07-09  4:14   ` Darrick J. Wong [this message]
2021-07-09 19:56     ` Allison Henderson
2021-07-07 22:21 ` [PATCH v21 12/13] xfs: Merge xfs_delattr_context into xfs_attr_item Allison Henderson
2021-07-07 22:21 ` [PATCH v21 13/13] xfs: Add helper function xfs_attr_leaf_addname Allison Henderson
2021-07-09  4:17   ` Darrick J. Wong
2021-07-09 19:56     ` Allison Henderson

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=20210709041407.GP11588@locust \
    --to=djwong@kernel.org \
    --cc=allison.henderson@oracle.com \
    --cc=linux-xfs@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.