The __swapcache_free is almost same with swapcache_free but only difference is that caller should pass stable swap_info_struct.
This function will be used by next patchsets. Signed-off-by: Minchan Kim <minc...@kernel.org> --- mm/swapfile.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/mm/swapfile.c b/mm/swapfile.c index 2966978..33ebdd5 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -634,20 +634,26 @@ void swap_free(swp_entry_t entry) } } + +void __swapcache_free(struct swap_info_struct *p, + swp_entry_t entry, struct page *page) +{ + unsigned char count; + count = swap_entry_free(p, entry, SWAP_HAS_CACHE); + mem_cgroup_uncharge_swapcache(page, entry, count != 0); +} + /* * Called after dropping swapcache to decrease refcnt to swap entries. */ void swapcache_free(swp_entry_t entry, struct page *page) { struct swap_info_struct *p; - unsigned char count; p = swap_info_get(entry); if (p) { spin_lock(&p->lock); - count = swap_entry_free(p, entry, SWAP_HAS_CACHE); - if (page) - mem_cgroup_uncharge_swapcache(page, entry, count != 0); + __swapcache_free(p, entry, page); spin_unlock(&p->lock); } } -- 1.8.2.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/