[PATCH 4/6] mm: compaction: only set skip flag if cc->no_set_skip_hint is false

Baolin Wang posted 6 patches 2 years, 8 months ago
[PATCH 4/6] mm: compaction: only set skip flag if cc->no_set_skip_hint is false
Posted by Baolin Wang 2 years, 8 months ago
To keep the same logic as test_and_set_skip(), only set the skip flag
if cc->no_set_skip_hint is false, which makes code more reasonable.

Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>
---
 mm/compaction.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/compaction.c b/mm/compaction.c
index 1e5183f39ca9..65d8d9223acc 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -1223,7 +1223,7 @@ isolate_migratepages_block(struct compact_control *cc, unsigned long low_pfn,
 	 * rescanned twice in a row.
 	 */
 	if (low_pfn == end_pfn && (!nr_isolated || cc->finish_pageblock)) {
-		if (valid_page && !skip_updated)
+		if (!cc->no_set_skip_hint && valid_page && !skip_updated)
 			set_pageblock_skip(valid_page);
 		update_cached_migrate(cc, low_pfn);
 	}
-- 
2.27.0
Re: [PATCH 4/6] mm: compaction: only set skip flag if cc->no_set_skip_hint is false
Posted by Vlastimil Babka 2 years, 8 months ago
On 5/25/23 14:53, Baolin Wang wrote:
> To keep the same logic as test_and_set_skip(), only set the skip flag
> if cc->no_set_skip_hint is false, which makes code more reasonable.
> 
> Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>

Acked-by: Vlastimil Babka <vbabka@suse.cz>

> ---
>  mm/compaction.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/mm/compaction.c b/mm/compaction.c
> index 1e5183f39ca9..65d8d9223acc 100644
> --- a/mm/compaction.c
> +++ b/mm/compaction.c
> @@ -1223,7 +1223,7 @@ isolate_migratepages_block(struct compact_control *cc, unsigned long low_pfn,
>  	 * rescanned twice in a row.
>  	 */
>  	if (low_pfn == end_pfn && (!nr_isolated || cc->finish_pageblock)) {
> -		if (valid_page && !skip_updated)
> +		if (!cc->no_set_skip_hint && valid_page && !skip_updated)
>  			set_pageblock_skip(valid_page);
>  		update_cached_migrate(cc, low_pfn);
>  	}