Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1426713

Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting

From "Huang\, Ying" <ying.huang@intel.com>
Newsgroups linux.kernel
Subject Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting
Date 2016-06-20 17:50 +0200
Message-ID <rM9Cy-1EU-15@gated-at.bofh.it> (permalink)
References <rKSkq-Vx-3@gated-at.bofh.it> <rKUFA-2px-37@gated-at.bofh.it> <rL4lz-8sx-21@gated-at.bofh.it> <rLUNb-Da-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Minchan Kim <minchan@kernel.org> writes:

> On Fri, Jun 17, 2016 at 08:59:31AM -0700, Huang, Ying wrote:
>> Minchan Kim <minchan@kernel.org> writes:
>> 
>> > Hi,
>> >
>> > On Thu, Jun 16, 2016 at 08:03:54PM -0700, Huang, Ying wrote:
>> >> From: Huang Ying <ying.huang@intel.com>
>> >> 
>> >> madvise_free_huge_pmd should return 0 if the fallback PTE operations are
>> >> required.  In madvise_free_huge_pmd, if part pages of THP are discarded,
>> >> the THP will be split and fallback PTE operations should be used if
>> >> splitting succeeds.  But the original code will make fallback PTE
>> >> operations skipped, after splitting succeeds.  Fix that via make
>> >> madvise_free_huge_pmd return 0 after splitting successfully, so that the
>> >> fallback PTE operations will be done.
>> >
>> > You're right. Thanks!
>> >
>> >> 
>> >> Know issues: if my understanding were correct, return 1 from
>> >> madvise_free_huge_pmd means the following processing for the PMD should
>> >> be skipped, while return 0 means the following processing is still
>> >> needed.  So the function should return 0 only if the THP is split
>> >> successfully or the PMD is not trans huge.  But the pmd_trans_unstable
>> >> after madvise_free_huge_pmd guarantee the following processing will be
>> >> skipped for huge PMD.  So current code can run properly.  But if my
>> >> understanding were correct, we can clean up return code of
>> >> madvise_free_huge_pmd accordingly.
>> >
>> > I like your clean up. Just a minor comment below.
>> >
>> >> 
>> >> Signed-off-by: "Huang, Ying" <ying.huang@intel.com>
>> >> ---
>> >>  mm/huge_memory.c | 7 +------
>> >>  1 file changed, 1 insertion(+), 6 deletions(-)
>> >> 
>> >> diff --git a/mm/huge_memory.c b/mm/huge_memory.c
>> >> index 2ad52d5..64dc95d 100644
>> >> --- a/mm/huge_memory.c
>> >> +++ b/mm/huge_memory.c
>> >
>> > First of all, let's change ret from int to bool.
>> > And then, add description in the function entry.
>> >
>> > /*
>> >  * Return true if we do MADV_FREE successfully on entire pmd page.
>> >  * Otherwise, return false.
>> >  */
>> >
>> > And do not set to 1 if it is huge_zero_pmd but just goto out to
>> > return false.
>> 
>> Do you want to fold the cleanup with this patch or do that in another
>> patch?
>
> I prefer separating cleanup and bug fix so that we can send only bug
> fix patch to stable tree.

Sure.

Best Regards,
Huang, Ying

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting "Huang, Ying" <ying.huang@intel.com> - 2016-06-17 05:10 +0200
  Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting "Huang\, Ying" <ying.huang@intel.com> - 2016-06-17 05:20 +0200
  Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return  value after splitting Minchan Kim <minchan@kernel.org> - 2016-06-17 07:40 +0200
    Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting "Huang\, Ying" <ying.huang@intel.com> - 2016-06-17 18:00 +0200
      Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return  value after splitting Minchan Kim <minchan@kernel.org> - 2016-06-20 02:00 +0200
        Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting "Huang\, Ying" <ying.huang@intel.com> - 2016-06-20 17:50 +0200
    Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting "Huang\, Ying" <ying.huang@intel.com> - 2016-06-17 21:50 +0200
      Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return  value after splitting Minchan Kim <minchan@kernel.org> - 2016-06-20 03:10 +0200
        Re: [PATCH] MADVISE_FREE, THP: Fix madvise_free_huge_pmd return value after splitting "Huang\, Ying" <ying.huang@intel.com> - 2016-06-20 17:50 +0200

csiph-web