Re: [PATCH v4] ceph: mark directory as non-complete complete after loading key

From: Xiubo Li
Date: Tue Nov 29 2022 - 17:38:34 EST



On 29/11/2022 23:21, Ilya Dryomov wrote:
On Tue, Nov 29, 2022 at 3:50 PM Xiubo Li <xiubli@xxxxxxxxxx> wrote:

On 29/11/2022 22:32, Ilya Dryomov wrote:
On Tue, Nov 29, 2022 at 3:15 PM Xiubo Li <xiubli@xxxxxxxxxx> wrote:
On 29/11/2022 18:39, Luís Henriques wrote:
When setting a directory's crypt context, ceph_dir_clear_complete() needs to
be called otherwise if it was complete before, any existing (old) dentry will
still be valid.

This patch adds a wrapper around __fscrypt_prepare_readdir() which will
ensure a directory is marked as non-complete if key status changes.

Signed-off-by: Luís Henriques <lhenriques@xxxxxxx>
---
Hi Xiubo,

Here's a rebase of this patch. I did some testing but since this branch
doesn't really have full fscrypt support, I couldn't even reproduce the
bug. So, my testing was limited.
I'm planing not to update the wip-fscrypt branch any more, except the IO
path related fixes, which may introduce potential bugs each time as before.

Since the qa tests PR has finished and the tests have passed, so we are
planing to merge the first none IO part, around 27 patches. And then
pull the reset patches from wip-fscrypt branch.
I'm not sure if merging metadata and I/O path patches separately
makes sense. What would a user do with just filename encryption?
Hi Ilya,

I think the IO ones should be followed soon.

Currently the filename ones have been well testes. And the contents will
be by passed for now.

Since this is just for Dev Preview feature IMO it should be okay (?)
I don't think there is such a thing as a Dev Preview feature when it
comes to the mainline kernel, particularly in the area of filesystems
and storage. It should be ready for users at least to some extent. So
my question stands: what would a user do with just filename encryption?

Before why split these patches was that, the content patches will change a lot and this may will stay in the testing branch for months. This will make it hard to test and rebase the non-encrypt patches based on encrypt ones when trying to pick and merge them.

The filename ones are simple and won't have the issue.

No worry, I can try to pick the content patches from wip-fscrypt branch soon. But before that please help check the existing non-encypt patches in the testing branch are okay and won't do big change later, which will always make me to rebase the content patches again and again and may involve many changes and potential bugs.

Thanks!

- Xiubo


Thanks,

Ilya