[PATCH 38/62] shmem: Convert shmem_confirm_swap to XArray

From: Matthew Wilcox
Date: Wed Nov 22 2017 - 16:15:29 EST


From: Matthew Wilcox <mawilcox@xxxxxxxxxxxxx>

xa_load has its own RCU locking, so we can eliminate it here.

Signed-off-by: Matthew Wilcox <mawilcox@xxxxxxxxxxxxx>
---
mm/shmem.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/mm/shmem.c b/mm/shmem.c
index f16afa03cfb0..98944cff6319 100644
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -348,12 +348,7 @@ static int shmem_xa_replace(struct address_space *mapping,
static bool shmem_confirm_swap(struct address_space *mapping,
pgoff_t index, swp_entry_t swap)
{
- void *item;
-
- rcu_read_lock();
- item = radix_tree_lookup(&mapping->pages, index);
- rcu_read_unlock();
- return item == swp_to_radix_entry(swap);
+ return xa_load(&mapping->pages, index) == swp_to_radix_entry(swap);
}

/*
--
2.15.0