Re: [PATCH 1/6] block: add support for REQ_OP_VERIFY

Chaitanya Kulkarni
2022-07-05T16:51:27Z

Darrik,

Thanks for the reply.

>> +
>> +/**
>> + * __blkdev_issue_verify - generate number of verify operations
>> + * @bdev: blockdev to issue
>> + * @sector: start sector
>> + * @nr_sects: number of sectors to verify
>> + * @gfp_mask: memory allocation flags (for bio_alloc())
>> + * @biop: pointer to anchor bio
>> + *
>> + * Description:
>> + * Verify a block range using hardware offload.
>> + *
>> + * The function will emulate verify operation if no explicit hardware
>> + * offloading for verifying is provided.
>> + */
>> +int __blkdev_issue_verify(struct block_device *bdev, sector_t sector,
>> + sector_t nr_sects, gfp_t gfp_mask, struct bio **biop)
>> +{
>> + unsigned int max_verify_sectors = bdev_verify_sectors(bdev);
>> + sector_t min_io_sect = (BIO_MAX_VECS << PAGE_SHIFT) >> 9;
>> + struct bio *bio = *biop;
>> + sector_t curr_sects;
>> + char *buf;
>> +
>> + if (!max_verify_sectors) {
>> + int ret = 0;
>> +
>> + buf = kzalloc(min_io_sect << 9, GFP_KERNEL);
>
> k*z*alloc? I don't think you need to zero a buffer that we're reading
> into, right?
>
> --D

we don't need to but I guess it is just a habit to make sure alloced
buffer is zeored, should I remove it for any particular reason ?

-ck