]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blobdiff - mm/page_io.c
mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block
[mirror_ubuntu-focal-kernel.git] / mm / page_io.c
index 24ee600f913174c3928b77f2498192e472927da0..bcf27d0572534f941b1654f00c26c9481ca9b21b 100644 (file)
@@ -73,6 +73,7 @@ static void swap_slot_free_notify(struct page *page)
 {
        struct swap_info_struct *sis;
        struct gendisk *disk;
+       swp_entry_t entry;
 
        /*
         * There is no guarantee that the page is in swap cache - the software
@@ -104,11 +105,10 @@ static void swap_slot_free_notify(struct page *page)
         * we again wish to reclaim it.
         */
        disk = sis->bdev->bd_disk;
-       if (disk->fops->swap_slot_free_notify) {
-               swp_entry_t entry;
+       entry.val = page_private(page);
+       if (disk->fops->swap_slot_free_notify && __swap_count(entry) == 1) {
                unsigned long offset;
 
-               entry.val = page_private(page);
                offset = swp_offset(entry);
 
                SetPageDirty(page);
@@ -260,11 +260,6 @@ out:
        return ret;
 }
 
-static sector_t swap_page_sector(struct page *page)
-{
-       return (sector_t)__page_file_index(page) << (PAGE_SHIFT - 9);
-}
-
 static inline void count_swpout_vm_event(struct page *page)
 {
 #ifdef CONFIG_TRANSPARENT_HUGEPAGE