All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chao Yu <chao@kernel.org>
To: Sheng Yong <shengyong1@huawei.com>,
	jaegeuk@kernel.org, yuchao0@huawei.com
Cc: miaoxie@huawei.com, heyunlei@huawei.com,
	linux-f2fs-devel@lists.sourceforge.net
Subject: Re: [RFC PATCH 2/2] f2fs: introduce lost+found feature
Date: Thu, 8 Feb 2018 21:29:11 +0800	[thread overview]
Message-ID: <e13a93f2-9873-a7f4-1d57-62f9388215d3@kernel.org> (raw)
In-Reply-To: <20180206043118.134137-3-shengyong1@huawei.com>

On 2018/2/6 12:31, Sheng Yong wrote:
> Introduce lost+found feature. The lost+found is a directory which saves

Nitpick, lost_found feature...

Needs to add /sys/fs/f2fs/features/lost_found sysfs entry, and show
'lost_found' in /sys/fs/f2fs/<dev>/features.

Thanks,

> unreachable files. If f2fsck finds a file which has no parent, or the
> parent is removed by f2fsck, the file will be placed in lost+found
> directory.
> 
> According fscrypt policy, lost+found could not be encrypted. As a
> result, the root directory cannot be encrypted. So if lost+found
> feature is enabled, let's avoid to encrypt root directory.
> 
> Signed-off-by: Sheng Yong <shengyong1@huawei.com>
> ---
>  fs/f2fs/f2fs.h  |  2 ++
>  fs/f2fs/super.c | 12 ++++++++++++
>  2 files changed, 14 insertions(+)
> 
> diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
> index a60d56a96f9b..d9c9be6ea5d5 100644
> --- a/fs/f2fs/f2fs.h
> +++ b/fs/f2fs/f2fs.h
> @@ -125,6 +125,7 @@ struct f2fs_mount_info {
>  #define F2FS_FEATURE_FLEXIBLE_INLINE_XATTR	0x0040
>  #define F2FS_FEATURE_QUOTA_INO		0x0080
>  #define F2FS_FEATURE_INODE_CRTIME	0x0100
> +#define F2FS_FEATURE_LOST_FOUND		0x0200
>  
>  #define F2FS_HAS_FEATURE(sb, mask)					\
>  	((F2FS_SB(sb)->raw_super->feature & cpu_to_le32(mask)) != 0)
> @@ -3186,6 +3187,7 @@ F2FS_FEATURE_FUNCS(inode_chksum, INODE_CHKSUM);
>  F2FS_FEATURE_FUNCS(flexible_inline_xattr, FLEXIBLE_INLINE_XATTR);
>  F2FS_FEATURE_FUNCS(quota_ino, QUOTA_INO);
>  F2FS_FEATURE_FUNCS(inode_crtime, INODE_CRTIME);
> +F2FS_FEATURE_FUNCS(lost_found, LOST_FOUND);
>  
>  #ifdef CONFIG_BLK_DEV_ZONED
>  static inline int get_blkz_type(struct f2fs_sb_info *sbi,
> diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
> index b39ab55ab1b5..5f536e878d21 100644
> --- a/fs/f2fs/super.c
> +++ b/fs/f2fs/super.c
> @@ -1797,6 +1797,18 @@ static int f2fs_get_context(struct inode *inode, void *ctx, size_t len)
>  static int f2fs_set_context(struct inode *inode, const void *ctx, size_t len,
>  							void *fs_data)
>  {
> +	struct f2fs_sb_info *sbi = F2FS_I_SB(inode);
> +
> +	/*
> +	 * Encrypting the root directory is not allowed because f2fsck
> +	 * expects lost+found directory to exist and remain unencrypted
> +	 * if LOST_FOUND feature is enabled.
> +	 *
> +	 */
> +	if (f2fs_sb_has_lost_found(sbi->sb) &&
> +			inode->i_ino == F2FS_ROOT_INO(sbi))
> +		return -EPERM;
> +
>  	return f2fs_setxattr(inode, F2FS_XATTR_INDEX_ENCRYPTION,
>  				F2FS_XATTR_NAME_ENCRYPTION_CONTEXT,
>  				ctx, len, fs_data, XATTR_CREATE);
> 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot

  reply	other threads:[~2018-02-08 13:29 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-06  4:31 [RFC PATCH 0/2] f2fs: introduce lost+found feature Sheng Yong
2018-02-06  4:31 ` [RFC PATCH 1/2] f2fs: clean up f2fs_sb_has_xxx functions Sheng Yong
2018-02-08 13:21   ` Chao Yu
2018-02-06  4:31 ` [RFC PATCH 2/2] f2fs: introduce lost+found feature Sheng Yong
2018-02-08 13:29   ` Chao Yu [this message]
2018-02-09  3:22     ` Sheng Yong
2018-02-10  2:50 ` [RFC PATCH 0/2] " Jaegeuk Kim
2018-02-11  1:53   ` Sheng Yong
2018-02-12  0:10     ` Jaegeuk Kim

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=e13a93f2-9873-a7f4-1d57-62f9388215d3@kernel.org \
    --to=chao@kernel.org \
    --cc=heyunlei@huawei.com \
    --cc=jaegeuk@kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=miaoxie@huawei.com \
    --cc=shengyong1@huawei.com \
    --cc=yuchao0@huawei.com \
    /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.