]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dm error: mark as DM_TARGET_PASSES_INTEGRITY
authorChristoph Hellwig <hch@lst.de>
Mon, 18 Aug 2025 04:58:21 +0000 (06:58 +0200)
committerMikulas Patocka <mpatocka@redhat.com>
Tue, 19 Aug 2025 09:12:50 +0000 (11:12 +0200)
Mark dm error as DM_TARGET_PASSES_INTEGRITY so that it can be stacked on
top of PI capable devices.  The claim is strictly speaking as lie as dm
error fails all I/O and doesn't pass anything on, but doing the same for
integrity I/O work just fine :)

This helps to make about two dozen xfstests test cases pass on PI capable
devices.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
drivers/md/dm-target.c

index 2af5a9514c05e6770f03ffa8697918ac2bf26bdd..8fede41adec0044e2c20b09b461dc6f422ff207c 100644 (file)
@@ -263,7 +263,8 @@ static long io_err_dax_direct_access(struct dm_target *ti, pgoff_t pgoff,
 static struct target_type error_target = {
        .name = "error",
        .version = {1, 7, 0},
-       .features = DM_TARGET_WILDCARD | DM_TARGET_ZONED_HM,
+       .features = DM_TARGET_WILDCARD | DM_TARGET_ZONED_HM |
+               DM_TARGET_PASSES_INTEGRITY,
        .ctr  = io_err_ctr,
        .dtr  = io_err_dtr,
        .map  = io_err_map,