[Intel-gfx] [PATCH] mm: Use local variable for swap address space

Stuart Summers stuart.summers at intel.com
Wed Jun 19 01:38:56 UTC 2019


This addresses the following build error:
mm/huge_memory.c: In function ‘__split_huge_page’:
mm/huge_memory.c:2506:41: warning: dereferencing ‘void *’ pointer
    __xa_store(&swap_address_space(entry)->i_pages,
                                         ^~
mm/huge_memory.c:2506:41: error: request for member ‘i_pages’ in
something not a structure or union

Cc: Chris Wilson <chris at chris-wilson.co.uk>
Signed-off-by: Stuart Summers <stuart.summers at intel.com>
---
 mm/huge_memory.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index affb2c3667f9..bced5485137b 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -2503,7 +2503,9 @@ static void __split_huge_page(struct page *page, struct list_head *list,
 					head + i, 0);
 		} else if (PageSwapCache(page)) {
 			swp_entry_t entry = { .val = page_private(head + i) };
-			__xa_store(&swap_address_space(entry)->i_pages,
+			struct address_space *address_space =
+				swap_address_space(entry);
+			__xa_store(&address_space->i_pages,
 				   swp_offset(entry),
 				   head + i, 0);
 		}
-- 
2.21.0.5.gaeb582a983



More information about the Intel-gfx mailing list