Files
twx-linux/include/linux
Dan Williams 807e336589 libnvdimm, dax: fix 1GB-aligned namespaces vs physical misalignment
commit 41fce90f26 upstream.

The following namespace configuration attempt:

    # ndctl create-namespace -e namespace0.0 -m devdax -a 1G -f
    libndctl: ndctl_dax_enable: dax0.1: failed to enable
      Error: namespace0.0: failed to enable

    failed to reconfigure namespace: No such device or address

...fails when the backing memory range is not physically aligned to 1G:

    # cat /proc/iomem | grep Persistent
    210000000-30fffffff : Persistent Memory (legacy)

In the above example the 4G persistent memory range starts and ends on a
256MB boundary.

We handle this case correctly when needing to handle cases that violate
section alignment (128MB) collisions against "System RAM", and we simply
need to extend that padding/truncation for the 1GB alignment use case.

Cc: <stable@vger.kernel.org>
Fixes: 315c562536 ("libnvdimm, pfn: add 'align' attribute...")
Reported-and-tested-by: Jane Chu <jane.chu@oracle.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-02-28 10:18:34 +01:00
..
2017-10-08 10:26:06 +02:00
2017-06-14 15:06:00 +02:00
2018-01-17 09:38:57 +01:00
2018-02-28 10:18:33 +01:00
2017-08-06 18:59:43 -07:00
2017-07-15 12:16:11 +02:00
2017-05-14 14:00:22 +02:00
2017-07-12 15:01:02 +02:00
2018-02-28 10:18:33 +01:00
2017-08-06 18:59:43 -07:00
2017-08-24 17:12:19 -07:00
2018-02-28 10:18:33 +01:00
2017-08-24 17:12:21 -07:00
2017-08-24 17:12:21 -07:00
2017-08-30 10:21:40 +02:00
2017-01-19 20:17:59 +01:00
2017-04-21 09:31:21 +02:00
2017-12-25 14:23:37 +01:00
2017-09-09 17:39:41 +02:00