Re: [PATCH v6 0/4] Enable >0 order folio memory compaction

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

 



On 19 Feb 2024, at 21:06, Andrew Morton wrote:

> On Fri, 16 Feb 2024 12:04:28 -0500 Zi Yan <zi.yan@xxxxxxxx> wrote:
>
>> Baolin's patch
>
> Baolin writes many patches and patches have names, please use them!
Sorry for not being specific. I mean this fixup:
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/commit/?h=mm-everything-2024-02-16-01-35&id=97f749c7c82f677f89bbf4f10de7816ce9b071fe

to this patch:
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/commit/?h=mm-everything-2024-02-16-01-35&id=ea87b0558293a5ad597bea606fe261f7b2650cda


The patch was based on top of my early version of this patchset, thus
uses "cc->nr_migratepages -= 1 << order;" and
"cc->nr_migratepages += 1 << order;", but now it is applied before
mine. The change should be "cc->nr_migratepages--;" and
"cc->nr_migratepages++;", respectively.

>
>> on nr_migratepages was based on this one, a better fixup
>> for it might be below. Since before my patchset, compaction only deals with
>> order-0 pages.
>
> I don't understand what this means.  The patchset you sent applies OK
> to mm-unstable so what else is there to do?

Your above fixup to Baolin's patch needs to be changed to the patch below
and my "mm/compaction: add support for >0 order folio memory compaction" will
need to be adjusted accordingly to be applied on top.

Let me know if anything is unclear.

>> diff --git a/mm/compaction.c b/mm/compaction.c
>> index 01ec85cfd623f..e60135e2019d6 100644
>> --- a/mm/compaction.c
>> +++ b/mm/compaction.c
>> @@ -1798,7 +1798,7 @@ static struct folio *compaction_alloc(struct folio *src, unsigned long data)
>>  	dst = list_entry(cc->freepages.next, struct folio, lru);
>>  	list_del(&dst->lru);
>>  	cc->nr_freepages--;
>> -	cc->nr_migratepages -= 1 << order;
>> +	cc->nr_migratepages--;
>>
>>  	return dst;
>>  }
>> @@ -1814,7 +1814,7 @@ static void compaction_free(struct folio *dst, unsigned long data)
>>
>>  	list_add(&dst->lru, &cc->freepages);
>>  	cc->nr_freepages++;
>> -	cc->nr_migratepages += 1 << order;
>> +	cc->nr_migratepages++;
>>  }


--
Best Regards,
Yan, Zi

Attachment: signature.asc
Description: OpenPGP digital signature


[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