Re: [PATCH] ext4: compare inode's i_projid with EXT4_DEF_PROJID rather than check EXT4_INODE_PROJINHERIT flag

Roman Anufriev
2021-12-10T19:55:17Z

On Tue, 7 Dec 2021, Theodore Y. Ts'o wrote:

> On Tue, Dec 07, 2021 at 05:05:19PM +0300, Roman Anufriev wrote:
>>> Commit 7ddf79a10395 ("ext4: only set project inherit bit for directory")
>>> removes EXT4_INODE_PROJINHERIT flag from regular files. This makes
>>> ext4_statfs() output incorrect (function does not apply quota limits
>>> on used/available space, etc) when called on dentry of regular file
>>> with project quota enabled.
>
> Under what circumstance is userspace trying to call statfs on a file
> descriptor?
>
> Removing the test for EXT4_INODE_PROJINHERIT will cause
> incorrect/misleading results being returned in the case where we have
> a directory where a directory hierarchy is using project id's, but
> which is *not* using PROJINHERIT.

I'm not sure I quite understood what will be wrong in that case, because
as Dave mentioned:

> PROJINHERIT just indicates the default projid that an inode is
> created with; ...

Roman