lkml.org 
[lkml]   [2017]   [Apr]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH v2 30/33] libnvdimm, pmem: fix persistence warning
    From
    Date
    The pmem driver assumes if platform firmware describes the memory
    devices associated with a persistent memory range and
    CONFIG_ARCH_HAS_PMEM_API=y that it has all the mechanism necessary to
    flush data to a power-fail safe zone. We warn if the firmware does not
    describe memory devices, but we also need to warn if the architecture
    does not claim pmem support.

    Cc: Jan Kara <jack@suse.cz>
    Cc: Jeff Moyer <jmoyer@redhat.com>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Matthew Wilcox <mawilcox@microsoft.com>
    Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
    Signed-off-by: Dan Williams <dan.j.williams@intel.com>
    ---
    drivers/nvdimm/region_devs.c | 5 +++--
    1 file changed, 3 insertions(+), 2 deletions(-)

    diff --git a/drivers/nvdimm/region_devs.c b/drivers/nvdimm/region_devs.c
    index 307a48060aa3..5976f6c0407f 100644
    --- a/drivers/nvdimm/region_devs.c
    +++ b/drivers/nvdimm/region_devs.c
    @@ -970,8 +970,9 @@ int nvdimm_has_flush(struct nd_region *nd_region)
    struct nd_region_data *ndrd = dev_get_drvdata(&nd_region->dev);
    int i;

    - /* no nvdimm == flushing capability unknown */
    - if (nd_region->ndr_mappings == 0)
    + /* no nvdimm or pmem api == flushing capability unknown */
    + if (nd_region->ndr_mappings == 0
    + || !IS_ENABLED(CONFIG_ARCH_HAS_PMEM_API))
    return -ENXIO;

    for (i = 0; i < nd_region->ndr_mappings; i++)
    \
     
     \ /
      Last update: 2017-04-15 04:42    [W:4.546 / U:0.056 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site