All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Biggers <ebiggers@kernel.org>
To: Chandan Rajendra <chandan@linux.vnet.ibm.com>
Cc: linux-fscrypt@vger.kernel.org, linux-ext4@vger.kernel.org,
	linux-f2fs-devel@lists.sourceforge.net, tytso@mit.edu
Subject: Re: [PATCH 1/7] ext4: use IS_ENCRYPTED() to check encryption status
Date: Mon, 26 Nov 2018 16:35:11 -0800	[thread overview]
Message-ID: <20181127003510.GD11663@gmail.com> (raw)
In-Reply-To: <20181119052324.31456-2-chandan@linux.vnet.ibm.com>

Hi Chandan,

On Mon, Nov 19, 2018 at 10:53:18AM +0530, Chandan Rajendra wrote:
> @@ -4724,7 +4724,7 @@ static bool ext4_should_use_dax(struct inode *inode)
>  		return false;
>  	if (ext4_has_inline_data(inode))
>  		return false;
> -	if (ext4_encrypted_inode(inode))
> +	if (IS_ENCRYPTED(inode))
>  		return false;
>  	if (ext4_verity_inode(inode))
>  		return false;

I think this part is wrong.  See how ext4_should_use_dax() is called from
ext4_set_inode_flags(), from ext4_set_context().  In this case,
ext4_set_inode_flags() should set S_ENCRYPTED and clear S_DAX.  However, you've
changed ext4_should_use_dax() to check S_ENCRYPTED instead of EXT4_ENCRYPT_FL;
but S_ENCRYPTED isn't set until later in ext4_set_inode_flags(), so S_DAX won't
be cleared anymore.

So I think you need to use ext4_test_inode_flag() here instead.

Similarly for the verity check.

- Eric

WARNING: multiple messages have this Message-ID (diff)
From: Eric Biggers <ebiggers@kernel.org>
To: Chandan Rajendra <chandan@linux.vnet.ibm.com>
Cc: linux-fscrypt@vger.kernel.org, linux-ext4@vger.kernel.org,
	tytso@mit.edu, linux-f2fs-devel@lists.sourceforge.net
Subject: Re: [PATCH 1/7] ext4: use IS_ENCRYPTED() to check encryption status
Date: Mon, 26 Nov 2018 16:35:11 -0800	[thread overview]
Message-ID: <20181127003510.GD11663@gmail.com> (raw)
In-Reply-To: <20181119052324.31456-2-chandan@linux.vnet.ibm.com>

Hi Chandan,

On Mon, Nov 19, 2018 at 10:53:18AM +0530, Chandan Rajendra wrote:
> @@ -4724,7 +4724,7 @@ static bool ext4_should_use_dax(struct inode *inode)
>  		return false;
>  	if (ext4_has_inline_data(inode))
>  		return false;
> -	if (ext4_encrypted_inode(inode))
> +	if (IS_ENCRYPTED(inode))
>  		return false;
>  	if (ext4_verity_inode(inode))
>  		return false;

I think this part is wrong.  See how ext4_should_use_dax() is called from
ext4_set_inode_flags(), from ext4_set_context().  In this case,
ext4_set_inode_flags() should set S_ENCRYPTED and clear S_DAX.  However, you've
changed ext4_should_use_dax() to check S_ENCRYPTED instead of EXT4_ENCRYPT_FL;
but S_ENCRYPTED isn't set until later in ext4_set_inode_flags(), so S_DAX won't
be cleared anymore.

So I think you need to use ext4_test_inode_flag() here instead.

Similarly for the verity check.

- Eric

  reply	other threads:[~2018-11-27 11:31 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-19  5:23 [PATCH 0/7] Remove fs specific fscrypt and fsverity build config options Chandan Rajendra
2018-11-19  5:23 ` Chandan Rajendra
2018-11-19  5:23 ` [PATCH 1/7] ext4: use IS_ENCRYPTED() to check encryption status Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-27  0:35   ` Eric Biggers [this message]
2018-11-27  0:35     ` Eric Biggers
2018-11-19  5:23 ` [PATCH 2/7] f2fs: " Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-19  6:24   ` Chao Yu
2018-11-19  6:24     ` Chao Yu
2018-11-19 21:23   ` [f2fs-dev] " Jaegeuk Kim
2018-11-19 21:23     ` Jaegeuk Kim
2018-11-26  3:41     ` [f2fs-dev] " Theodore Y. Ts'o
2018-11-26  3:41       ` Theodore Y. Ts'o
2018-11-26  4:00       ` [f2fs-dev] " Theodore Y. Ts'o
2018-11-26  4:00         ` Theodore Y. Ts'o
2018-11-26 17:34         ` [f2fs-dev] " Theodore Y. Ts'o
2018-11-26 17:34           ` Theodore Y. Ts'o
2018-11-26 23:52           ` [f2fs-dev] " Jaegeuk Kim
2018-11-26 23:52             ` Jaegeuk Kim
2018-11-29 10:38           ` [f2fs-dev] " Chandan Rajendra
2018-11-29 10:38             ` Chandan Rajendra
2018-11-29 19:05             ` [f2fs-dev] " Eric Biggers
2018-11-29 19:05               ` Eric Biggers
2018-11-30  5:27               ` [f2fs-dev] " Chandan Rajendra
2018-11-30  5:27                 ` Chandan Rajendra
2018-11-30 17:44                 ` [f2fs-dev] " Eric Biggers
2018-11-30 17:44                   ` Eric Biggers
2018-11-19  5:23 ` [PATCH 3/7] fscrypt: Remove filesystem specific build config option Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-27  0:14   ` Eric Biggers
2018-11-27  0:14     ` Eric Biggers
2018-11-27 13:29     ` Chandan Rajendra
2018-11-27 13:29       ` Chandan Rajendra
2018-11-19  5:23 ` [PATCH 4/7] Add S_VERITY and IS_VERITY() Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-27  0:08   ` Eric Biggers
2018-11-27  0:08     ` Eric Biggers
2018-11-27 13:30     ` Chandan Rajendra
2018-11-27 13:30       ` Chandan Rajendra
2018-11-19  5:23 ` [PATCH 5/7] ext4: use IS_VERITY() to check inode's fsverity status Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-26 17:36   ` Theodore Y. Ts'o
2018-11-26 17:36     ` Theodore Y. Ts'o
2018-11-27  0:29     ` Eric Biggers
2018-11-27  0:29       ` Eric Biggers
2018-11-27  3:03     ` Chandan Rajendra
2018-11-27  3:03       ` Chandan Rajendra
2018-11-28 13:49     ` Chandan Rajendra
2018-11-28 13:49       ` Chandan Rajendra
2018-11-19  5:23 ` [PATCH 6/7] f2fs: " Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-19  6:25   ` [f2fs-dev] " Chao Yu
2018-11-19  6:25     ` Chao Yu
2018-11-19  6:25     ` [f2fs-dev] " Chao Yu
2018-11-27  0:41   ` Eric Biggers
2018-11-27  0:41     ` Eric Biggers
2018-11-19  5:23 ` [PATCH 7/7] fsverity: Remove filesystem specific build config option Chandan Rajendra
2018-11-19  5:23   ` Chandan Rajendra
2018-11-27  0:45   ` Eric Biggers
2018-11-27  0:45     ` Eric Biggers
2018-11-27 13:31     ` Chandan Rajendra
2018-11-27 13:31       ` Chandan Rajendra

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=20181127003510.GD11663@gmail.com \
    --to=ebiggers@kernel.org \
    --cc=chandan@linux.vnet.ibm.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=linux-fscrypt@vger.kernel.org \
    --cc=tytso@mit.edu \
    /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.