Thread (4 messages) 4 messages, 2 authors, 2019-05-27

Re: [PATCH] mm/nvdimm: Use correct alignment when looking at first pfn from a region

From: Dan Williams <hidden>
Date: 2019-05-14 04:29:41
Also in: linux-mm, nvdimm

On Mon, May 13, 2019 at 7:55 PM Aneesh Kumar K.V
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
We already add the start_pad to the resource->start but fails to section
align the start. This make sure with altmap we compute the right first
pfn when start_pad is zero and we are doing an align down of start address.

Signed-off-by: Aneesh Kumar K.V <redacted>
---
 kernel/memremap.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/memremap.c b/kernel/memremap.c
index a856cb5ff192..23d77b60e728 100644
--- a/kernel/memremap.c
+++ b/kernel/memremap.c
@@ -59,9 +59,9 @@ static unsigned long pfn_first(struct dev_pagemap *pgmap)
 {
        const struct resource *res = &pgmap->res;
        struct vmem_altmap *altmap = &pgmap->altmap;
-       unsigned long pfn;
+       unsigned long pfn = PHYS_PFN(res->start);

-       pfn = res->start >> PAGE_SHIFT;
+       pfn = SECTION_ALIGN_DOWN(pfn);
This does not seem right to me it breaks the assumptions of where the
first expected valid pfn occurs in the passed in range.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help