Loading mm/shmem.c +6 −7 Original line number Diff line number Diff line Loading @@ -867,18 +867,17 @@ unsigned long shmem_swap_usage(struct vm_area_struct *vma) */ void shmem_unlock_mapping(struct address_space *mapping) { struct pagevec pvec; struct folio_batch fbatch; pgoff_t index = 0; pagevec_init(&pvec); folio_batch_init(&fbatch); /* * Minor point, but we might as well stop if someone else SHM_LOCKs it. */ while (!mapping_unevictable(mapping)) { if (!pagevec_lookup(&pvec, mapping, &index)) break; check_move_unevictable_pages(&pvec); pagevec_release(&pvec); while (!mapping_unevictable(mapping) && filemap_get_folios(mapping, &index, ~0UL, &fbatch)) { check_move_unevictable_folios(&fbatch); folio_batch_release(&fbatch); cond_resched(); } } Loading Loading
mm/shmem.c +6 −7 Original line number Diff line number Diff line Loading @@ -867,18 +867,17 @@ unsigned long shmem_swap_usage(struct vm_area_struct *vma) */ void shmem_unlock_mapping(struct address_space *mapping) { struct pagevec pvec; struct folio_batch fbatch; pgoff_t index = 0; pagevec_init(&pvec); folio_batch_init(&fbatch); /* * Minor point, but we might as well stop if someone else SHM_LOCKs it. */ while (!mapping_unevictable(mapping)) { if (!pagevec_lookup(&pvec, mapping, &index)) break; check_move_unevictable_pages(&pvec); pagevec_release(&pvec); while (!mapping_unevictable(mapping) && filemap_get_folios(mapping, &index, ~0UL, &fbatch)) { check_move_unevictable_folios(&fbatch); folio_batch_release(&fbatch); cond_resched(); } } Loading