Re: [PATCH v2 2/2] mm/damon/ops-common: factor out damon_putback_folio_list()

[email protected] Fri, 24 Jul 2026 06:07:07 +0000
Newsgroups dev.linux.lists.damon
Message-ID <[email protected]>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] Removal of the `struct folio *folio;` local variable declaration causes a build failure.
--

--- Patch [2]: [PATCH v2 2/2] mm/damon/ops-common: factor out damon_putback_folio_list() ---
commit 44363c3cc00338e3c3445bc5730a2655a4c0fded
Author: liyouhong <[email protected]>
mm/damon/ops-common: factor out damon_putback_folio_list()

This patch factors out the duplicated folio putback loop from
damon_migrate_folio_list() and damon_migrate_pages() into a new helper
function, damon_putback_folio_list().

> diff --git a/mm/damon/ops-common.c b/mm/damon/ops-common.c
> index 0981a5e3af172..4b99c31122d6d 100644
> --- a/mm/damon/ops-common.c
> +++ b/mm/damon/ops-common.c
[ ... ]
> @@ -330,12 +330,22 @@ static unsigned int __damon_migrate_folio_list(
[ ... ]
>  static unsigned int damon_migrate_folio_list(struct list_head *folio_list,
>  						struct pglist_data *pgdat,
>  						int target_nid)
>  {
>  	unsigned int nr_migrated = 0;
> -	struct folio *folio;

[Severity: Low]
Does removing this declaration result in a build failure? The folio variable
appears to still be used in damon_migrate_folio_list() during the initial
loop over folio_list:

	while (!list_empty(folio_list)) {
		cond_resched();

		folio = lru_to_folio(folio_list);
		list_del(&folio->lru);
        ...

>  	LIST_HEAD(ret_folios);
>  	LIST_HEAD(migrate_folios);

-- 
Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=2