On Tue, Dec 13, 2022 at 11:22:31AM -0800, Darrick J. Wong wrote: > On Tue, Dec 13, 2022 at 11:08:45AM -0800, Eric Biggers wrote: > > On Tue, Dec 13, 2022 at 06:29:34PM +0100, Andrey Albershteyn wrote: > > > > > > Also add check that block size == PAGE_SIZE as fs-verity doesn't > > > support different sizes yet. > > > > That's coming with > > https://lore.kernel.org/linux-fsdevel/20221028224539.171818-1-ebiggers@xxxxxxxxxx/T/#u, > > which I'll be resending soon and I hope to apply for 6.3. > > Review and testing of that patchset, along with its associated xfstests update > > (https://lore.kernel.org/fstests/20221211070704.341481-1-ebiggers@xxxxxxxxxx/T/#u), > > would be greatly appreciated. > > > > Note, as proposed there will still be a limit of: > > > > merkle_tree_block_size <= fs_block_size <= page_size > > > > Hopefully you don't need fs_block_size > page_size or > > Not right this second, but large folios (and the ability to demand them) > are probably the last major piece that we need to support running > 64k-fsblock filesystems on x86. > > > merkle_tree_block_size > fs_block_size? > > Doubtful. > Thanks for the info. Actually, I think merkle_tree_block_size <= fs_block_size <= page_size is wrong. It should actually be merkle_tree_block_size <= min(fs_block_size, page_size) So there shouldn't actually be a problem with fs_block_size > page_size (assuming that the filesystem doesn't have unrelated problems with it). merkle_tree_block_size <= page_size comes from the way that fs/verity/verify.c works (again, talking about the version with my patchset "fsverity: support for non-4K pages" applied, and not the current upstream version which has a stronger assumption of merkle_tree_block_size == page_size). merkle_tree_block_size <= fs_block_size comes from the fact that every time data is verified, it must be Merkle tree block aligned. Maybe even that is not necessarily a problem, if the filesystem waits to collect a full page (or folio) before verifying it. But ext4 will do a FS block at a time. - Eric