libnvdimm, pfn: fix start_pad handling for aligned namespaces
authorDan Williams <dan.j.williams@intel.com>
Tue, 19 Dec 2017 23:07:10 +0000 (15:07 -0800)
committerDan Williams <dan.j.williams@intel.com>
Tue, 19 Dec 2017 23:10:06 +0000 (15:10 -0800)
commit19deaa217bc04e83b59b5e8c8229eb0e53ad9efc
treee287ec08be453ffb14fa7cc99184c7fe785d5626
parentadf6895754e2503d994a765535fd1813f8834674
libnvdimm, pfn: fix start_pad handling for aligned namespaces

The alignment checks at pfn driver startup fail to properly account for
the 'start_pad' in the case where the namespace is misaligned relative
to its internal alignment. This is typically triggered in 1G aligned
namespace, but could theoretically trigger with small namespace
alignments. When this triggers the kernel reports messages of the form:

    dax2.1: bad offset: 0x3c000000 dax disabled align: 0x40000000

Cc: <stable@vger.kernel.org>
Fixes: 1ee6667cd8d1 ("libnvdimm, pfn, dax: fix initialization vs autodetect...")
Reported-by: Jane Chu <jane.chu@oracle.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/nvdimm/pfn_devs.c