Skip to content

Commit 9345f8c

Browse files
author
Rafael Aquini
committed
mm: migrate_device: use a folio in migrate_device_range()
JIRA: https://issues.redhat.com/browse/RHEL-84184 JIRA: https://issues.redhat.com/browse/RHEL-83249 This patch is a backport of the following upstream commit: commit 53456b7 Author: Kefeng Wang <wangkefeng.wang@huawei.com> Date: Mon Aug 26 14:58:10 2024 +0800 mm: migrate_device: use a folio in migrate_device_range() Save two calls to compound_head() and use folio throughout. Link: https://lkml.kernel.org/r/20240826065814.1336616-3-wangkefeng.wang@huawei.com Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com> Acked-by: David Hildenbrand <david@redhat.com> Reviewed-by: Vishal Moola (Oracle) <vishal.moola@gmail.com> Reviewed-by: Alistair Popple <apopple@nvidia.com> Cc: Baolin Wang <baolin.wang@linux.alibaba.com> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Matthew Wilcox (Oracle) <willy@infradead.org> Cc: Zi Yan <ziy@nvidia.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Rafael Aquini <raquini@redhat.com>
1 parent 026885d commit 9345f8c

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

mm/migrate_device.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -895,16 +895,17 @@ int migrate_device_range(unsigned long *src_pfns, unsigned long start,
895895
unsigned long i, pfn;
896896

897897
for (pfn = start, i = 0; i < npages; pfn++, i++) {
898-
struct page *page = pfn_to_page(pfn);
898+
struct folio *folio;
899899

900-
if (!get_page_unless_zero(page)) {
900+
folio = folio_get_nontail_page(pfn_to_page(pfn));
901+
if (!folio) {
901902
src_pfns[i] = 0;
902903
continue;
903904
}
904905

905-
if (!trylock_page(page)) {
906+
if (!folio_trylock(folio)) {
906907
src_pfns[i] = 0;
907-
put_page(page);
908+
folio_put(folio);
908909
continue;
909910
}
910911

0 commit comments

Comments
 (0)