diff mbox series

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

Message ID 20230802093741.2333325-5-shikemeng@huaweicloud.com (mailing list archive)
State New
Headers show
Series Fixes and cleanups to compaction | expand

Commit Message

Kemeng Shi Aug. 2, 2023, 9:37 a.m. UTC
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@huaweicloud.com>
---
 mm/compaction.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Baolin Wang Aug. 2, 2023, 11:31 a.m. UTC | #1
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@huaweicloud.com>
> ---
>   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 ..."

> +	 * 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;
Kemeng Shi Aug. 3, 2023, 1:50 a.m. UTC | #2
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@huaweicloud.com>
>> ---
>>   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;
>
diff mbox series

Patch

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
+	 * 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;