Re: [PATCH v2 4/8] mm/compaction: correct comment of fast_find_migrateblock in isolate_migratepages

From: Kemeng Shi
Date: Wed Aug 02 2023 - 21:53:38 EST




on 8/2/2023 7:31 PM, Baolin Wang wrote:
>
>
> On 8/2/2023 5:37 PM, Kemeng Shi wrote:
>> After 90ed667c03fe5 ("Revert "Revert "mm/compaction: fix set skip in
>> fast_find_migrateblock"""), we remove skip set in fast_find_migrateblock.
>> Correct comment that fast_find_block is used to avoid isolation_suitable
>> check for pageblock returned from fast_find_migrateblock because
>> fast_find_migrateblock will mark found pageblock skipped.
>> Instead, comment that fast_find_block is used to avoid a redundant check
>> of fast found pageblock which is already checked skip flag inside
>> fast_find_migrateblock.
>>
>> Signed-off-by: Kemeng Shi <shikemeng@xxxxxxxxxxxxxxx>
>> ---
>>   mm/compaction.c | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/mm/compaction.c b/mm/compaction.c
>> index 984c17a5c8fd..5c9dc4049e8e 100644
>> --- a/mm/compaction.c
>> +++ b/mm/compaction.c
>> @@ -1966,8 +1966,8 @@ static isolate_migrate_t isolate_migratepages(struct compact_control *cc)
>>           block_start_pfn = cc->zone->zone_start_pfn;
>>         /*
>> -     * fast_find_migrateblock marks a pageblock skipped so to avoid
>> -     * the isolation_suitable check below, check whether the fast
>> +     * fast_find_migrateblock will ignore pageblock skipped, so to avoid
>
> These seem confusing to me, since the fast_find_migrateblock() did not ignore the skip flag checking. So how about below words?
>
> "fast_find_migrateblock() has already ensured the pageblock is not set with a skipped flag, so to avoid the isolation_suitable check below again ..."
>
Thanks for the advise. This looks good to me. I will do this in next version.
>> +     * the isolation_suitable check below again, check whether the fast
>>        * search was successful.
>>        */
>>       fast_find_block = low_pfn != cc->migrate_pfn && !cc->fast_search_fail;
>