Re: [PATCH v2 0/9] libnvdimm, pmem: handle media errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2016-01-06 at 14:30 -0800, Dan Williams wrote:
> Changes since v1 [1]:
> 
> 1/ Reorder the patches to drop/defer the mcsafe_copy() integration
> until
>    mcsafe_copy() lands in -tip.
> 
> 2/ Remove the badblocks_alloc() api, it is not needed.  All dynamic
>    allocations of badblocks must use devm_alloc_badblocks().
> 
> [1]: https://lists.01.org/pipermail/linux-nvdimm/2016-January/003864.
> html
> 
> ---
> 
> Following the enabling to retrieve a platform provided list of nvdimm
> media errors [1], implement error handling in the pmem i/o
> paths.  This
> adds the following capabilities:
> 
>     1/ Consult badblocks in the pmem_make_request() path to fail
> block
>        layer requests to platform advertised bad address ranges.
> 
>     2/ Consult badblocks in the nvdimm_read_bytes() path to
> communicate
>        errors for namespace metadata reads and btt data reads.
> 
> [2]: https://lists.01.org/pipermail/linux-nvdimm/2015-December/003706
> .html
> 
> ---

Apart from the couple of points I mentioned, the rest of the series
looks good to me!

Reviewed-by: Vishal Verma <vishal.l.verma@xxxxxxxxx>


> 
> Dan Williams (9):
>       libnvdimm, pmem: move definition of nvdimm_namespace_add_poison
> to nd.h
>       badblocks: rename badblocks_free to badblocks_exit
>       block: clarify badblocks lifetime
>       block, badblocks, pmem: introduce devm_alloc_badblocks
>       pmem: fail io-requests to known bad blocks
>       block, dax: disable dax in the presence of bad blocks
>       libnvdimm, pmem: prepare for handling badblocks via
> nvdimm_read_bytes()
>       libnvdimm, pmem: nvdimm_read_bytes() badblocks support
>       block: kill disk_{check|set|clear|alloc}_badblocks
> 
> 
>  block/badblocks.c            |   59 +++++++++++++++++++++++++-------
> -
>  block/genhd.c                |   47 --------------------------
>  block/ioctl.c                |    9 +++++
>  drivers/md/md.c              |    2 +
>  drivers/nvdimm/btt.c         |   11 ++++++
>  drivers/nvdimm/btt_devs.c    |   10 ++++++
>  drivers/nvdimm/core.c        |   71 ++++++++++++++++++++++++------
> ----------
>  drivers/nvdimm/nd-core.h     |    2 -
>  drivers/nvdimm/nd.h          |    2 +
>  drivers/nvdimm/pfn_devs.c    |   10 ++++++
>  drivers/nvdimm/pmem.c        |   75 +++++++++++++++++++++++++++++++-
> ----------
>  drivers/nvdimm/region_devs.c |    6 +++
>  include/linux/badblocks.h    |    5 ++-
>  include/linux/genhd.h        |    5 ---
>  include/linux/nd.h           |    2 +
>  15 files changed, 197 insertions(+), 119 deletions(-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-
> block" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-block" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux