linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* Re: [Patch v4 0/4] mm/mremap: cleanup move_page_tables() a little
       [not found] <20200708095028.41706-1-richard.weiyang@linux.alibaba.com>
@ 2020-07-09 19:38 ` Dmitry Osipenko
  2020-07-10  1:14   ` Wei Yang
  0 siblings, 1 reply; 3+ messages in thread
From: Dmitry Osipenko @ 2020-07-09 19:38 UTC (permalink / raw)
  To: Wei Yang, akpm, kirill.shutemov, vbabka, yang.shi, thomas_os,
	anshuman.khandual, sean.j.christopherson, peterx, aneesh.kumar,
	willy, thellstrom
  Cc: linux-mm, linux-kernel, linux-arm-kernel

08.07.2020 12:50, Wei Yang пишет:
> move_page_tables() tries to move page table by PMD or PTE.
> 
> The root reason is if it tries to move PMD, both old and new range should be
> PMD aligned. But current code calculate old range and new range separately.
> This leads to some redundant check and calculation.
> 
> This cleanup tries to consolidate the range check in one place to reduce some
> extra range handling.
> 
> v4:
>   * remove a redundant parentheses pointed by Kirill
> 
> v3:
>   * merge patch 1 with 2 as suggested by Kirill

>   * add patch 4 to simplify the logic to calculate next and extent

Hello, Wei!

Unfortunately you re-introduced the offending change that was fixed in
v2 and today's next-20200709 on ARM32 is broken once again:

BUG: Bad rss-counter state mm:db85ec46 type:MM_ANONPAGES val:190

Please don't do it ;)

> v2:
>   * remove 3rd patch which doesn't work on ARM platform. Thanks report and
>     test from Dmitry Osipenko
> 
> Wei Yang (4):
>   mm/mremap: it is sure to have enough space when extent meets
>     requirement
>   mm/mremap: calculate extent in one place
>   mm/mremap: start addresses are properly aligned
>   mm/mremap: use pmd_addr_end to simplify the calculate of extent
> 
>  include/linux/huge_mm.h |  2 +-
>  mm/huge_memory.c        |  8 +-------
>  mm/mremap.c             | 27 ++++++++++-----------------
>  3 files changed, 12 insertions(+), 25 deletions(-)
> 


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Patch v4 0/4] mm/mremap: cleanup move_page_tables() a little
  2020-07-09 19:38 ` [Patch v4 0/4] mm/mremap: cleanup move_page_tables() a little Dmitry Osipenko
@ 2020-07-10  1:14   ` Wei Yang
  2020-07-10  8:14     ` Kirill A. Shutemov
  0 siblings, 1 reply; 3+ messages in thread
From: Wei Yang @ 2020-07-10  1:14 UTC (permalink / raw)
  To: Dmitry Osipenko
  Cc: linux-arm-kernel, thellstrom, willy, yang.shi, Wei Yang,
	anshuman.khandual, aneesh.kumar, thomas_os, linux-kernel,
	sean.j.christopherson, linux-mm, peterx, kirill.shutemov, akpm,
	vbabka

On Thu, Jul 09, 2020 at 10:38:58PM +0300, Dmitry Osipenko wrote:
>08.07.2020 12:50, Wei Yang пишет:
>> move_page_tables() tries to move page table by PMD or PTE.
>> 
>> The root reason is if it tries to move PMD, both old and new range should be
>> PMD aligned. But current code calculate old range and new range separately.
>> This leads to some redundant check and calculation.
>> 
>> This cleanup tries to consolidate the range check in one place to reduce some
>> extra range handling.
>> 
>> v4:
>>   * remove a redundant parentheses pointed by Kirill
>> 
>> v3:
>>   * merge patch 1 with 2 as suggested by Kirill
>
>>   * add patch 4 to simplify the logic to calculate next and extent
>
>Hello, Wei!
>
>Unfortunately you re-introduced the offending change that was fixed in
>v2 and today's next-20200709 on ARM32 is broken once again:
>
>BUG: Bad rss-counter state mm:db85ec46 type:MM_ANONPAGES val:190
>

Ah, my bad, I forget the error we met last time. It is the different format of
pmd_addr_end.

Sorry for that.

@ Kirill

If you agree, I would leave the extent/next calculation as it is in patch 3.

>Please don't do it ;)
>
>> v2:
>>   * remove 3rd patch which doesn't work on ARM platform. Thanks report and
>>     test from Dmitry Osipenko
>> 
>> Wei Yang (4):
>>   mm/mremap: it is sure to have enough space when extent meets
>>     requirement
>>   mm/mremap: calculate extent in one place
>>   mm/mremap: start addresses are properly aligned
>>   mm/mremap: use pmd_addr_end to simplify the calculate of extent
>> 
>>  include/linux/huge_mm.h |  2 +-
>>  mm/huge_memory.c        |  8 +-------
>>  mm/mremap.c             | 27 ++++++++++-----------------
>>  3 files changed, 12 insertions(+), 25 deletions(-)
>> 

-- 
Wei Yang
Help you, Help me

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Patch v4 0/4] mm/mremap: cleanup move_page_tables() a little
  2020-07-10  1:14   ` Wei Yang
@ 2020-07-10  8:14     ` Kirill A. Shutemov
  0 siblings, 0 replies; 3+ messages in thread
From: Kirill A. Shutemov @ 2020-07-10  8:14 UTC (permalink / raw)
  To: Wei Yang
  Cc: linux-arm-kernel, thellstrom, willy, yang.shi, anshuman.khandual,
	aneesh.kumar, thomas_os, linux-kernel, sean.j.christopherson,
	linux-mm, peterx, kirill.shutemov, Dmitry Osipenko, akpm, vbabka

On Fri, Jul 10, 2020 at 09:14:10AM +0800, Wei Yang wrote:
> On Thu, Jul 09, 2020 at 10:38:58PM +0300, Dmitry Osipenko wrote:
> >08.07.2020 12:50, Wei Yang пишет:
> >> move_page_tables() tries to move page table by PMD or PTE.
> >> 
> >> The root reason is if it tries to move PMD, both old and new range should be
> >> PMD aligned. But current code calculate old range and new range separately.
> >> This leads to some redundant check and calculation.
> >> 
> >> This cleanup tries to consolidate the range check in one place to reduce some
> >> extra range handling.
> >> 
> >> v4:
> >>   * remove a redundant parentheses pointed by Kirill
> >> 
> >> v3:
> >>   * merge patch 1 with 2 as suggested by Kirill
> >
> >>   * add patch 4 to simplify the logic to calculate next and extent
> >
> >Hello, Wei!
> >
> >Unfortunately you re-introduced the offending change that was fixed in
> >v2 and today's next-20200709 on ARM32 is broken once again:
> >
> >BUG: Bad rss-counter state mm:db85ec46 type:MM_ANONPAGES val:190
> >
> 
> Ah, my bad, I forget the error we met last time. It is the different format of
> pmd_addr_end.
> 
> Sorry for that.
> 
> @ Kirill
> 
> If you agree, I would leave the extent/next calculation as it is in patch 3.

Okay.

-- 
 Kirill A. Shutemov

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-07-10  8:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20200708095028.41706-1-richard.weiyang@linux.alibaba.com>
2020-07-09 19:38 ` [Patch v4 0/4] mm/mremap: cleanup move_page_tables() a little Dmitry Osipenko
2020-07-10  1:14   ` Wei Yang
2020-07-10  8:14     ` Kirill A. Shutemov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).