mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 11:33:28 +02:00
block: prepare generation / verification helpers for fs usage
Return the status from verify instead of directly stashing it in the bio, and rename the helpers to use the usual bio_ prefix for things operating on a bio. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Anuj Gupta <anuj20.g@samsung.com> Reviewed-by: Kanchan Joshi <joshi.k@samsung.com> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Tested-by: Anuj Gupta <anuj20.g@samsung.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
7afe93946d
commit
3f00626832
|
|
@ -39,7 +39,7 @@ static void bio_integrity_verify_fn(struct work_struct *work)
|
|||
container_of(work, struct bio_integrity_data, work);
|
||||
struct bio *bio = bid->bio;
|
||||
|
||||
blk_integrity_verify_iter(bio, &bid->saved_bio_iter);
|
||||
bio->bi_status = bio_integrity_verify(bio, &bid->saved_bio_iter);
|
||||
bio_integrity_finish(bid);
|
||||
bio_endio(bio);
|
||||
}
|
||||
|
|
@ -100,7 +100,7 @@ void bio_integrity_prep(struct bio *bio, unsigned int action)
|
|||
|
||||
/* Auto-generate integrity metadata if this is a write */
|
||||
if (bio_data_dir(bio) == WRITE && bip_should_check(&bid->bip))
|
||||
blk_integrity_generate(bio);
|
||||
bio_integrity_generate(bio);
|
||||
else
|
||||
bid->saved_bio_iter = bio->bi_iter;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -699,8 +699,10 @@ int bdev_open(struct block_device *bdev, blk_mode_t mode, void *holder,
|
|||
const struct blk_holder_ops *hops, struct file *bdev_file);
|
||||
int bdev_permission(dev_t dev, blk_mode_t mode, void *holder);
|
||||
|
||||
void blk_integrity_generate(struct bio *bio);
|
||||
void blk_integrity_verify_iter(struct bio *bio, struct bvec_iter *saved_iter);
|
||||
void bio_integrity_generate(struct bio *bio);
|
||||
blk_status_t bio_integrity_verify(struct bio *bio,
|
||||
struct bvec_iter *saved_iter);
|
||||
|
||||
void blk_integrity_prepare(struct request *rq);
|
||||
void blk_integrity_complete(struct request *rq, unsigned int nr_bytes);
|
||||
|
||||
|
|
|
|||
|
|
@ -372,7 +372,7 @@ static void ext_pi_type1_complete(struct request *rq, unsigned int nr_bytes)
|
|||
}
|
||||
}
|
||||
|
||||
void blk_integrity_generate(struct bio *bio)
|
||||
void bio_integrity_generate(struct bio *bio)
|
||||
{
|
||||
struct blk_integrity *bi = blk_get_integrity(bio->bi_bdev->bd_disk);
|
||||
struct bio_integrity_payload *bip = bio_integrity(bio);
|
||||
|
|
@ -404,7 +404,7 @@ void blk_integrity_generate(struct bio *bio)
|
|||
}
|
||||
}
|
||||
|
||||
void blk_integrity_verify_iter(struct bio *bio, struct bvec_iter *saved_iter)
|
||||
blk_status_t bio_integrity_verify(struct bio *bio, struct bvec_iter *saved_iter)
|
||||
{
|
||||
struct blk_integrity *bi = blk_get_integrity(bio->bi_bdev->bd_disk);
|
||||
struct bio_integrity_payload *bip = bio_integrity(bio);
|
||||
|
|
@ -439,11 +439,11 @@ void blk_integrity_verify_iter(struct bio *bio, struct bvec_iter *saved_iter)
|
|||
}
|
||||
kunmap_local(kaddr);
|
||||
|
||||
if (ret) {
|
||||
bio->bi_status = ret;
|
||||
return;
|
||||
}
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return BLK_STS_OK;
|
||||
}
|
||||
|
||||
void blk_integrity_prepare(struct request *rq)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user