Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1641962 > unrolled thread
| Started by | Pasha Tatashin <pasha.tatashin@oracle.com> |
|---|---|
| First post | 2017-05-15 20:30 +0200 |
| Last post | 2017-05-16 02:40 +0200 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [v3 9/9] s390: teach platforms not to zero struct pages memory Pasha Tatashin <pasha.tatashin@oracle.com> - 2017-05-15 20:30 +0200
Re: [v3 9/9] s390: teach platforms not to zero struct pages memory Heiko Carstens <heiko.carstens@de.ibm.com> - 2017-05-16 01:20 +0200
Re: [v3 9/9] s390: teach platforms not to zero struct pages memory Pasha Tatashin <pasha.tatashin@oracle.com> - 2017-05-16 02:40 +0200
| From | Pasha Tatashin <pasha.tatashin@oracle.com> |
|---|---|
| Date | 2017-05-15 20:30 +0200 |
| Subject | Re: [v3 9/9] s390: teach platforms not to zero struct pages memory |
| Message-ID | <tHsUN-3dA-13@gated-at.bofh.it> |
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;
>
[toc] | [next] | [standalone]
| From | Heiko Carstens <heiko.carstens@de.ibm.com> |
|---|---|
| Date | 2017-05-16 01:20 +0200 |
| Message-ID | <tHxrr-6b0-7@gated-at.bofh.it> |
| In reply to | #1641962 |
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;
> >
>
[toc] | [prev] | [next] | [standalone]
| From | Pasha Tatashin <pasha.tatashin@oracle.com> |
|---|---|
| Date | 2017-05-16 02:40 +0200 |
| Message-ID | <tHyGR-6OV-1@gated-at.bofh.it> |
| In reply to | #1642118 |
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>
>
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web