Message ID | 20170508113624.GA4876@osiris |
---|---|
State | RFC |
Delegated to: | David Miller |
Headers | show |
Hi Heiko, Thank you for looking at this patch. I am worried to make the proposed change, because, as I understand in this case we allocate memory not for "struct page"s but for table that hold them. So, we will change the behavior from the current one, where this table is allocated zeroed, but now it won't be zeroed. Pasha > > If you add the hunk below then this is > > Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com> > > diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c > index ffe9ba1aec8b..bf88a8b9c24d 100644 > --- a/arch/s390/mm/vmem.c > +++ b/arch/s390/mm/vmem.c > @@ -272,7 +272,7 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node) > if (pte_none(*pt_dir)) { > void *new_page; > > - new_page = vmemmap_alloc_block(PAGE_SIZE, node, true); > + new_page = vmemmap_alloc_block(PAGE_SIZE, node, VMEMMAP_ZERO); > if (!new_page) > goto out; > pte_val(*pt_dir) = __pa(new_page) | pgt_prot; > -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hello Pasha, > Thank you for looking at this patch. I am worried to make the proposed > change, because, as I understand in this case we allocate memory not for > "struct page"s but for table that hold them. So, we will change the behavior > from the current one, where this table is allocated zeroed, but now it won't > be zeroed. The page table, if needed, is allocated and populated a couple of lines above. See the vmem_pte_alloc() call. So my request to include the hunk below is still valid ;) > >If you add the hunk below then this is > > > >Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com> > > > >diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c > >index ffe9ba1aec8b..bf88a8b9c24d 100644 > >--- a/arch/s390/mm/vmem.c > >+++ b/arch/s390/mm/vmem.c > >@@ -272,7 +272,7 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node) > > if (pte_none(*pt_dir)) { > > void *new_page; > >- new_page = vmemmap_alloc_block(PAGE_SIZE, node, true); > >+ new_page = vmemmap_alloc_block(PAGE_SIZE, node, VMEMMAP_ZERO); > > if (!new_page) > > goto out; > > pte_val(*pt_dir) = __pa(new_page) | pgt_prot; > > > -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Ah OK, I will include the change. Thank you, Pasha On 05/15/2017 07:17 PM, Heiko Carstens wrote: > Hello Pasha, > >> Thank you for looking at this patch. I am worried to make the proposed >> change, because, as I understand in this case we allocate memory not for >> "struct page"s but for table that hold them. So, we will change the behavior >> from the current one, where this table is allocated zeroed, but now it won't >> be zeroed. > > The page table, if needed, is allocated and populated a couple of lines > above. See the vmem_pte_alloc() call. So my request to include the hunk > below is still valid ;) > >>> If you add the hunk below then this is >>> >>> Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com> >>> >>> diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c >>> index ffe9ba1aec8b..bf88a8b9c24d 100644 >>> --- a/arch/s390/mm/vmem.c >>> +++ b/arch/s390/mm/vmem.c >>> @@ -272,7 +272,7 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node) >>> if (pte_none(*pt_dir)) { >>> void *new_page; >>> - new_page = vmemmap_alloc_block(PAGE_SIZE, node, true); >>> + new_page = vmemmap_alloc_block(PAGE_SIZE, node, VMEMMAP_ZERO); >>> if (!new_page) >>> goto out; >>> pte_val(*pt_dir) = __pa(new_page) | pgt_prot; >>> >> > > -- > To unsubscribe, send a message with 'unsubscribe linux-mm' in > the body to majordomo@kvack.org. For more info on Linux MM, > see: http://www.linux-mm.org/ . > Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> > -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c index ffe9ba1aec8b..bf88a8b9c24d 100644 --- a/arch/s390/mm/vmem.c +++ b/arch/s390/mm/vmem.c @@ -272,7 +272,7 @@ int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node) if (pte_none(*pt_dir)) { void *new_page; - new_page = vmemmap_alloc_block(PAGE_SIZE, node, true); + new_page = vmemmap_alloc_block(PAGE_SIZE, node, VMEMMAP_ZERO); if (!new_page) goto out; pte_val(*pt_dir) = __pa(new_page) | pgt_prot;