Skip to content

Commit a1c8bdb

Browse files
Christoph Hellwigaxboe
authored andcommitted
block: handle REQ_OP_ZONE_APPEND in __bio_integrity_action
Otherwise zone append commands will miss their integrity data. While this works "fine" for auto-PI, it break file system PI and non-PI metadata. With this XFS on ZNS namespace with non-PI metadata and 512 byte sectors with PI work, while PI 4k sector formats with PI work only when Caleb's "block: fix integrity offset/length conversions" is applied as well. Note that unlike regular writes, zone append does need remapping as partitions are not supported on zoned block devices. Fixes: df3c485 ("block: switch on bio operation in bio_integrity_prep") Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Link: https://patch.msgid.link/20260624080014.1998650-3-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent e7c1627 commit a1c8bdb

1 file changed

Lines changed: 1 addition & 0 deletions

File tree

block/bio-integrity.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ unsigned int __bio_integrity_action(struct bio *bio)
3838
}
3939
return BI_ACT_BUFFER | BI_ACT_CHECK;
4040
case REQ_OP_WRITE:
41+
case REQ_OP_ZONE_APPEND:
4142
/*
4243
* Flush masquerading as write?
4344
*/

0 commit comments

Comments
 (0)