mm-vmscan-drop-checking-if-_deferred_list-is-empty-before-using-ttu_sync.patch removed from -mm tree
The quilt patch titled
Subject: mm/vmscan: drop checking if _deferred_list is empty before using TTU_SYNC
has been removed from the -mm tree. Its filename was
mm-vmscan-drop-checking-if-_deferred_list-is-empty-before-using-ttu_sync.patch
This patch was dropped because it was merged into the mm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
------------------------------------------------------
From: Barry Song <[email protected]>
Subject: mm/vmscan: drop checking if _deferred_list is empty before using TTU_SYNC
Date: Sun, 30 Jun 2024 11:41:55 +1200
The optimization of list_empty(&folio->_deferred_list) aimed to prevent increasing the PTL duration when a large folio is partially unmapped, for example, from subpage 0 to subpage (nr - 2).
But Ryan's commit 5ed890ce5147 ("mm: vmscan: avoid split during shrink_folio_list()") actually splits this kind of large folios. This makes the "optimization" useless.
Additionally, the list_empty() technically required a data_race() annotation.
---
mm/vmscan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
mm/vmscan.c renamed from mm/vmscan.c~mm-vmscan-drop-checking-if-_deferred_list-is-empty-before-using-ttu_sync +1 -1
@@ -1291,7 +1291,7 @@ retry:* try_to_unmap acquire PTL from the first PTE, * eliminating the influence of temporary PTE values. */ -if (folio_test_large (folio) &&list_empty (&folio->_deferred_list)) +if (folio_test_large (folio)) flags |=TTU_SYNC ;try_to_unmap (folio, flags);
_
Patches currently in -mm which might be from [email protected] are