Re: [PATCH 3/3] libnvdimm/pmem: Provide pmem_dax_clear_poison for dax operation
From: Jane Chu
Date: Thu Nov 04 2021 - 16:28:08 EST
On 11/4/2021 10:55 AM, Christoph Hellwig wrote:
> On Tue, Sep 14, 2021 at 05:31:32PM -0600, Jane Chu wrote:
>> +static int pmem_dax_clear_poison(struct dax_device *dax_dev, pgoff_t pgoff,
>> + size_t nr_pages)
>> +{
>> + unsigned int len = PFN_PHYS(nr_pages);
>> + sector_t sector = PFN_PHYS(pgoff) >> SECTOR_SHIFT;
>> + struct pmem_device *pmem = dax_get_private(dax_dev);
>> + phys_addr_t pmem_off = sector * 512 + pmem->data_offset;
>> + blk_status_t ret;
>> +
>> + if (!is_bad_pmem(&pmem->bb, sector, len))
>> + return 0;
>> +
>> + ret = pmem_clear_poison(pmem, pmem_off, len);
>> + return (ret == BLK_STS_OK) ? 0 : -EIO;
>
> No need for the braces here (and I'd prefer a good old if anyway).
>
> Otherwise looks good:
>
> Reviewed-by: Christoph Hellwig <hch@xxxxxx>
>
Thanks a lot! I'll keep in mind your comments.
-jane