diff options
author | Miaohe Lin <linmiaohe@huawei.com> | 2023-08-07 14:41:25 +0300 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2023-08-21 23:37:47 +0300 |
commit | 6379693e3c2683a7c86f395e878534731ac7ed06 (patch) | |
tree | 08101cd3801a509a9df293ba7b62d2215bf60f4f /mm/memory-failure.c | |
parent | 9a9d0b829901125553c36b9512b2a5da4505be31 (diff) | |
download | linux-6379693e3c2683a7c86f395e878534731ac7ed06.tar.xz |
mm: memory-failure: use helper macro llist_for_each_entry_safe()
It's more convenient to use helper macro llist_for_each_entry_safe().
No functional change intended.
Link: https://lkml.kernel.org/r/20230807114125.3440802-1-linmiaohe@huawei.com
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'mm/memory-failure.c')
-rw-r--r-- | mm/memory-failure.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index adb0dacbc74e..976747d28ce7 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -1868,13 +1868,12 @@ bool is_raw_hwpoison_page_in_hugepage(struct page *page) static unsigned long __folio_free_raw_hwp(struct folio *folio, bool move_flag) { - struct llist_node *t, *tnode, *head; + struct llist_node *head; + struct raw_hwp_page *p, *next; unsigned long count = 0; head = llist_del_all(raw_hwp_list_head(folio)); - llist_for_each_safe(tnode, t, head) { - struct raw_hwp_page *p = container_of(tnode, struct raw_hwp_page, node); - + llist_for_each_entry_safe(p, next, head, node) { if (move_flag) SetPageHWPoison(p->page); else @@ -1889,7 +1888,7 @@ static int folio_set_hugetlb_hwpoison(struct folio *folio, struct page *page) { struct llist_head *head; struct raw_hwp_page *raw_hwp; - struct llist_node *t, *tnode; + struct raw_hwp_page *p, *next; int ret = folio_test_set_hwpoison(folio) ? -EHWPOISON : 0; /* @@ -1900,9 +1899,7 @@ static int folio_set_hugetlb_hwpoison(struct folio *folio, struct page *page) if (folio_test_hugetlb_raw_hwp_unreliable(folio)) return -EHWPOISON; head = raw_hwp_list_head(folio); - llist_for_each_safe(tnode, t, head->first) { - struct raw_hwp_page *p = container_of(tnode, struct raw_hwp_page, node); - + llist_for_each_entry_safe(p, next, head->first, node) { if (p->page == page) return -EHWPOISON; } |