mbox series

[v4,0/4] btrfs-progs: support for fs-verity fstests

Message ID cover.1658867979.git.boris@bur.io (mailing list archive)
Headers show
Series btrfs-progs: support for fs-verity fstests | expand

Message

Boris Burkov July 26, 2022, 8:43 p.m. UTC
Adding fstests for fs-verity on btrfs needs some light support from
btrfs-progs. Specifically, it needs additional device corruption
features to test corruption detection, and it needs the RO COMPAT flag.

The first patch defines (u64)-1 as "UNSET_U64"
The second patch adds corrupting arbitrary regions of item data with -I.
The third patch adds corrupting holes and prealloc in extent data.
The fourth patch includes BTRFS_FEATURE_RO_COMPAT_VERITY to ctree.h

--
v4: use ternary and get rid of "bogus_type" to cleanup input handling of
    'corrupt_file_extent'
v3: add patch #defining (u64)-1 in btrfs-corrupt-block
    check item bounds in corruption function
    improve usage message for new corruption use case
    add patch with verity ro compat flag
v2: minor cleanups from rebasing after a year  


Boris Burkov (4):
  btrfs-corrupt-block: define (u64)-1 as UNSET_U64
  btrfs-progs: corrupt generic item data with btrfs-corrupt-block
  btrfs-progs: expand corrupt_file_extent in btrfs-corrupt-block
  btrfs-progs: add VERITY ro compat flag

 btrfs-corrupt-block.c | 126 ++++++++++++++++++++++++++++++++++--------
 kernel-shared/ctree.h |   4 +-
 2 files changed, 107 insertions(+), 23 deletions(-)

Comments

David Sterba July 27, 2022, 6:53 p.m. UTC | #1
On Tue, Jul 26, 2022 at 01:43:21PM -0700, Boris Burkov wrote:
> Adding fstests for fs-verity on btrfs needs some light support from
> btrfs-progs. Specifically, it needs additional device corruption
> features to test corruption detection, and it needs the RO COMPAT flag.
> 
> The first patch defines (u64)-1 as "UNSET_U64"

I've dropped the patch, we've been using (u64)-1 everywhere so it's
basically the coding style.

> The second patch adds corrupting arbitrary regions of item data with -I.

The corrupt-block options are a mess I've dropped the short options (in
a separate patch).

> The third patch adds corrupting holes and prealloc in extent data.
> The fourth patch includes BTRFS_FEATURE_RO_COMPAT_VERITY to ctree.h

Added to devel, thanks.