summaryrefslogtreecommitdiff
path: root/mm/memory-failure.c
diff options
context:
space:
mode:
authorMiaohe Lin <linmiaohe@huawei.com>2023-08-07 19:41:25 +0800
committerAndrew Morton <akpm@linux-foundation.org>2023-08-21 13:37:47 -0700
commit6379693e3c2683a7c86f395e878534731ac7ed06 (patch)
tree08101cd3801a509a9df293ba7b62d2215bf60f4f /mm/memory-failure.c
parent9a9d0b829901125553c36b9512b2a5da4505be31 (diff)
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.c13
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;
}