Re: [patch 13/15] mm/page_owner: align with pageblock_nr pages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2017/12/2 1:15, Michal Hocko wrote:
> On Fri 01-12-17 17:58:28, Vlastimil Babka wrote:
>> On 11/30/2017 11:15 PM, akpm@xxxxxxxxxxxxxxxxxxxx wrote:
>>> From: zhong jiang <zhongjiang@xxxxxxxxxx>
>>> Subject: mm/page_owner: align with pageblock_nr pages
>>>
>>> When pfn_valid(pfn) returns false, pfn should be aligned with
>>> pageblock_nr_pages other than MAX_ORDER_NR_PAGES in init_pages_in_zone,
>>> because the skipped 2M may be valid pfn, as a result, early allocated
>>> count will not be accurate.
>>>
>>> Link: http://lkml.kernel.org/r/1468938136-24228-1-git-send-email-zhongjiang@xxxxxxxxxx
>>> Signed-off-by: zhong jiang <zhongjiang@xxxxxxxxxx>
>>> Cc: Michal Hocko <mhocko@xxxxxxxxxx>
>>> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
>> The author never responded and Michal Hocko basically NAKed it in
>> https://lkml.kernel.org/r/<20160812130727.GI3639@xxxxxxxxxxxxxx>
>> I think we should drop it.
> Or extend the changelog to actually describe what kind of problem it
> fixes and do an additional step to unigy
> MAX_ORDER_NR_PAGES/pageblock_nr_pages
>  
  Hi, Michal
   
        IIRC,  I had explained the reason for patch.  if it not. I am so sorry for that.
    
        when we select MAX_ORDER_NR_PAGES,   the second 2M will be skiped.
       it maybe result in normal pages leak.

        meanwhile.  as you had said.  it make the code consistent.  why do not we do it.
   
        I think it is reasonable to upstream the patch.  maybe I should rewrite the changelog
       and repost it.

    Michal,  Do you think ?

 Thanks
zhongjiang
>>> ---
>>>
>>>  mm/page_owner.c |    2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff -puN mm/page_owner.c~mm-page_owner-align-with-pageblock_nr-pages mm/page_owner.c
>>> --- a/mm/page_owner.c~mm-page_owner-align-with-pageblock_nr-pages
>>> +++ a/mm/page_owner.c
>>> @@ -544,7 +544,7 @@ static void init_pages_in_zone(pg_data_t
>>>  	 */
>>>  	for (; pfn < end_pfn; ) {
>>>  		if (!pfn_valid(pfn)) {
>>> -			pfn = ALIGN(pfn + 1, MAX_ORDER_NR_PAGES);
>>> +			pfn = ALIGN(pfn + 1, pageblock_nr_pages);
>>>  			continue;
>>>  		}
>>>  
>>> _
>>>
>>> --
>>> To unsubscribe, send a message with 'unsubscribe linux-mm' in
>>> the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
>>> see: http://www.linux-mm.org/ .
>>> Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>
>>>


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]
  Powered by Linux