From: Eric Biggers <ebiggers@kernel.org>
To: Theodore Ts'o <tytso@mit.edu>
Cc: linux-fscrypt@vger.kernel.org, linux-fsdevel@vger.kernel.org,
linux-ext4@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
linux-mtd@lists.infradead.org, linux-unionfs@vger.kernel.org,
Sarthak Kukreti <sarthakkukreti@chromium.org>,
Gao Xiang <gaoxiang25@huawei.com>
Subject: Re: [PATCH v2 1/5] fscrypt: clean up and improve dentry revalidation
Date: Tue, 16 Apr 2019 17:10:42 -0700 [thread overview]
Message-ID: <20190417001041.GA18090@gmail.com> (raw)
In-Reply-To: <20190416230840.GB14623@mit.edu>
On Tue, Apr 16, 2019 at 07:08:40PM -0400, Theodore Ts'o wrote:
> On Wed, Mar 20, 2019 at 11:39:09AM -0700, Eric Biggers wrote:
> > From: Eric Biggers <ebiggers@google.com>
> >
> > Make various improvements to fscrypt dentry revalidation:
> >
> > - Don't try to handle the case where the per-directory key is removed,
> > as this can't happen without the inode (and dentries) being evicted.
> >
> > - Flag ciphertext dentries rather than plaintext dentries, since it's
> > ciphertext dentries that need the special handling.
> >
> > - Avoid doing unnecessary work for non-ciphertext dentries.
> >
> > - When revalidating ciphertext dentries, try to set up the directory's
> > i_crypt_info to make sure the key is really still absent, rather than
> > invalidating all negative dentries as the previous code did. An old
> > comment suggested we can't do this for locking reasons, but AFAICT
> > this comment was outdated and it actually works fine.
> >
> > Signed-off-by: Eric Biggers <ebiggers@google.com>
>
> Looks good, applied.
>
> - Ted
Hi Ted, I assumed you resolved the conflict with "fscrypt: use READ_ONCE() to
access ->i_crypt_info"? The code in fscrypt_d_revalidate() should be:
dir = dget_parent(dentry);
err = fscrypt_get_encryption_info(d_inode(dir));
valid = !fscrypt_has_encryption_key(d_inode(dir));
dput(dir);
- Eric
WARNING: multiple messages have this Message-ID (diff)
From: Eric Biggers <ebiggers@kernel.org>
To: Theodore Ts'o <tytso@mit.edu>
Cc: linux-unionfs@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
linux-fscrypt@vger.kernel.org, linux-mtd@lists.infradead.org,
Sarthak Kukreti <sarthakkukreti@chromium.org>,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [PATCH v2 1/5] fscrypt: clean up and improve dentry revalidation
Date: Tue, 16 Apr 2019 17:10:42 -0700 [thread overview]
Message-ID: <20190417001041.GA18090@gmail.com> (raw)
In-Reply-To: <20190416230840.GB14623@mit.edu>
On Tue, Apr 16, 2019 at 07:08:40PM -0400, Theodore Ts'o wrote:
> On Wed, Mar 20, 2019 at 11:39:09AM -0700, Eric Biggers wrote:
> > From: Eric Biggers <ebiggers@google.com>
> >
> > Make various improvements to fscrypt dentry revalidation:
> >
> > - Don't try to handle the case where the per-directory key is removed,
> > as this can't happen without the inode (and dentries) being evicted.
> >
> > - Flag ciphertext dentries rather than plaintext dentries, since it's
> > ciphertext dentries that need the special handling.
> >
> > - Avoid doing unnecessary work for non-ciphertext dentries.
> >
> > - When revalidating ciphertext dentries, try to set up the directory's
> > i_crypt_info to make sure the key is really still absent, rather than
> > invalidating all negative dentries as the previous code did. An old
> > comment suggested we can't do this for locking reasons, but AFAICT
> > this comment was outdated and it actually works fine.
> >
> > Signed-off-by: Eric Biggers <ebiggers@google.com>
>
> Looks good, applied.
>
> - Ted
Hi Ted, I assumed you resolved the conflict with "fscrypt: use READ_ONCE() to
access ->i_crypt_info"? The code in fscrypt_d_revalidate() should be:
dir = dget_parent(dentry);
err = fscrypt_get_encryption_info(d_inode(dir));
valid = !fscrypt_has_encryption_key(d_inode(dir));
dput(dir);
- Eric
WARNING: multiple messages have this Message-ID (diff)
From: Eric Biggers <ebiggers@kernel.org>
To: Theodore Ts'o <tytso@mit.edu>
Cc: linux-unionfs@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
linux-fscrypt@vger.kernel.org, linux-mtd@lists.infradead.org,
Sarthak Kukreti <sarthakkukreti@chromium.org>,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [f2fs-dev] [PATCH v2 1/5] fscrypt: clean up and improve dentry revalidation
Date: Tue, 16 Apr 2019 17:10:42 -0700 [thread overview]
Message-ID: <20190417001041.GA18090@gmail.com> (raw)
In-Reply-To: <20190416230840.GB14623@mit.edu>
On Tue, Apr 16, 2019 at 07:08:40PM -0400, Theodore Ts'o wrote:
> On Wed, Mar 20, 2019 at 11:39:09AM -0700, Eric Biggers wrote:
> > From: Eric Biggers <ebiggers@google.com>
> >
> > Make various improvements to fscrypt dentry revalidation:
> >
> > - Don't try to handle the case where the per-directory key is removed,
> > as this can't happen without the inode (and dentries) being evicted.
> >
> > - Flag ciphertext dentries rather than plaintext dentries, since it's
> > ciphertext dentries that need the special handling.
> >
> > - Avoid doing unnecessary work for non-ciphertext dentries.
> >
> > - When revalidating ciphertext dentries, try to set up the directory's
> > i_crypt_info to make sure the key is really still absent, rather than
> > invalidating all negative dentries as the previous code did. An old
> > comment suggested we can't do this for locking reasons, but AFAICT
> > this comment was outdated and it actually works fine.
> >
> > Signed-off-by: Eric Biggers <ebiggers@google.com>
>
> Looks good, applied.
>
> - Ted
Hi Ted, I assumed you resolved the conflict with "fscrypt: use READ_ONCE() to
access ->i_crypt_info"? The code in fscrypt_d_revalidate() should be:
dir = dget_parent(dentry);
err = fscrypt_get_encryption_info(d_inode(dir));
valid = !fscrypt_has_encryption_key(d_inode(dir));
dput(dir);
- Eric
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
WARNING: multiple messages have this Message-ID (diff)
From: Eric Biggers <ebiggers@kernel.org>
To: Theodore Ts'o <tytso@mit.edu>
Cc: Gao Xiang <gaoxiang25@huawei.com>,
linux-unionfs@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
linux-fscrypt@vger.kernel.org, linux-mtd@lists.infradead.org,
Sarthak Kukreti <sarthakkukreti@chromium.org>,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [PATCH v2 1/5] fscrypt: clean up and improve dentry revalidation
Date: Tue, 16 Apr 2019 17:10:42 -0700 [thread overview]
Message-ID: <20190417001041.GA18090@gmail.com> (raw)
In-Reply-To: <20190416230840.GB14623@mit.edu>
On Tue, Apr 16, 2019 at 07:08:40PM -0400, Theodore Ts'o wrote:
> On Wed, Mar 20, 2019 at 11:39:09AM -0700, Eric Biggers wrote:
> > From: Eric Biggers <ebiggers@google.com>
> >
> > Make various improvements to fscrypt dentry revalidation:
> >
> > - Don't try to handle the case where the per-directory key is removed,
> > as this can't happen without the inode (and dentries) being evicted.
> >
> > - Flag ciphertext dentries rather than plaintext dentries, since it's
> > ciphertext dentries that need the special handling.
> >
> > - Avoid doing unnecessary work for non-ciphertext dentries.
> >
> > - When revalidating ciphertext dentries, try to set up the directory's
> > i_crypt_info to make sure the key is really still absent, rather than
> > invalidating all negative dentries as the previous code did. An old
> > comment suggested we can't do this for locking reasons, but AFAICT
> > this comment was outdated and it actually works fine.
> >
> > Signed-off-by: Eric Biggers <ebiggers@google.com>
>
> Looks good, applied.
>
> - Ted
Hi Ted, I assumed you resolved the conflict with "fscrypt: use READ_ONCE() to
access ->i_crypt_info"? The code in fscrypt_d_revalidate() should be:
dir = dget_parent(dentry);
err = fscrypt_get_encryption_info(d_inode(dir));
valid = !fscrypt_has_encryption_key(d_inode(dir));
dput(dir);
- Eric
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply other threads:[~2019-04-17 0:10 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-20 18:39 [PATCH v2 0/5] fscrypt: d_revalidate fixes and cleanups Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` [PATCH v2 1/5] fscrypt: clean up and improve dentry revalidation Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` [f2fs-dev] " Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-04-16 23:08 ` Theodore Ts'o
2019-04-16 23:08 ` Theodore Ts'o
2019-04-17 0:10 ` Eric Biggers [this message]
2019-04-17 0:10 ` Eric Biggers
2019-04-17 0:10 ` [f2fs-dev] " Eric Biggers
2019-04-17 0:10 ` Eric Biggers
2019-04-17 13:50 ` Theodore Ts'o
2019-04-17 13:50 ` Theodore Ts'o
2019-04-17 13:50 ` Theodore Ts'o
2019-03-20 18:39 ` [PATCH v2 2/5] fscrypt: fix race allowing rename() and link() of ciphertext dentries Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` [f2fs-dev] " Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-04-17 13:53 ` Theodore Ts'o
2019-04-17 13:53 ` Theodore Ts'o
2019-04-17 13:53 ` Theodore Ts'o
2019-03-20 18:39 ` [PATCH v2 3/5] fs, fscrypt: clear DCACHE_ENCRYPTED_NAME when unaliasing directory Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-04-17 14:06 ` Theodore Ts'o
2019-04-17 14:06 ` Theodore Ts'o
2019-03-20 18:39 ` [PATCH v2 4/5] fscrypt: only set dentry_operations on ciphertext dentries Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` [f2fs-dev] " Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-04-17 14:07 ` Theodore Ts'o
2019-04-17 14:07 ` Theodore Ts'o
2019-04-17 14:07 ` Theodore Ts'o
2019-03-20 18:39 ` [PATCH v2 5/5] fscrypt: fix race where ->lookup() marks plaintext dentry as ciphertext Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-03-20 18:39 ` [f2fs-dev] " Eric Biggers
2019-03-20 18:39 ` Eric Biggers
2019-04-17 14:24 ` Theodore Ts'o
2019-04-17 14:24 ` Theodore Ts'o
2019-04-17 14:24 ` Theodore Ts'o
2019-04-01 17:11 ` [PATCH v2 0/5] fscrypt: d_revalidate fixes and cleanups Eric Biggers
2019-04-01 17:11 ` Eric Biggers
2019-04-01 17:11 ` [f2fs-dev] " Eric Biggers
2019-04-01 17:11 ` Eric Biggers
2019-04-08 8:22 ` Richard Weinberger
2019-04-08 8:22 ` Richard Weinberger
2019-04-08 8:22 ` Richard Weinberger
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=20190417001041.GA18090@gmail.com \
--to=ebiggers@kernel.org \
--cc=gaoxiang25@huawei.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-f2fs-devel@lists.sourceforge.net \
--cc=linux-fscrypt@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-unionfs@vger.kernel.org \
--cc=sarthakkukreti@chromium.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.