Lines Matching refs:page

31 	struct page *page = bio_first_page_all(bio);  in end_swap_bio_write()  local
34 SetPageError(page); in end_swap_bio_write()
43 set_page_dirty(page); in end_swap_bio_write()
47 ClearPageReclaim(page); in end_swap_bio_write()
49 end_page_writeback(page); in end_swap_bio_write()
53 static void swap_slot_free_notify(struct page *page) in swap_slot_free_notify() argument
65 if (unlikely(!PageSwapCache(page))) in swap_slot_free_notify()
68 sis = page_swap_info(page); in swap_slot_free_notify()
89 entry.val = page_private(page); in swap_slot_free_notify()
95 SetPageDirty(page); in swap_slot_free_notify()
103 struct page *page = bio_first_page_all(bio); in end_swap_bio_read() local
107 SetPageError(page); in end_swap_bio_read()
108 ClearPageUptodate(page); in end_swap_bio_read()
115 SetPageUptodate(page); in end_swap_bio_read()
116 swap_slot_free_notify(page); in end_swap_bio_read()
118 unlock_page(page); in end_swap_bio_read()
228 int swap_writepage(struct page *page, struct writeback_control *wbc) in swap_writepage() argument
232 if (try_to_free_swap(page)) { in swap_writepage()
233 unlock_page(page); in swap_writepage()
240 ret = arch_prepare_to_swap(page); in swap_writepage()
242 set_page_dirty(page); in swap_writepage()
243 unlock_page(page); in swap_writepage()
246 if (frontswap_store(page) == 0) { in swap_writepage()
247 set_page_writeback(page); in swap_writepage()
248 unlock_page(page); in swap_writepage()
249 end_page_writeback(page); in swap_writepage()
252 ret = __swap_writepage(page, wbc, end_swap_bio_write); in swap_writepage()
257 static inline void count_swpout_vm_event(struct page *page) in count_swpout_vm_event() argument
260 if (unlikely(PageTransHuge(page))) in count_swpout_vm_event()
263 count_vm_events(PSWPOUT, thp_nr_pages(page)); in count_swpout_vm_event()
267 static void bio_associate_blkg_from_page(struct bio *bio, struct page *page) in bio_associate_blkg_from_page() argument
272 memcg = page_memcg(page); in bio_associate_blkg_from_page()
282 #define bio_associate_blkg_from_page(bio, page) do { } while (0) argument
285 int __swap_writepage(struct page *page, struct writeback_control *wbc, in __swap_writepage() argument
290 struct swap_info_struct *sis = page_swap_info(page); in __swap_writepage()
292 VM_BUG_ON_PAGE(!PageSwapCache(page), page); in __swap_writepage()
298 .bv_page = page, in __swap_writepage()
306 kiocb.ki_pos = page_file_offset(page); in __swap_writepage()
308 set_page_writeback(page); in __swap_writepage()
309 unlock_page(page); in __swap_writepage()
325 set_page_dirty(page); in __swap_writepage()
326 ClearPageReclaim(page); in __swap_writepage()
328 page_file_offset(page)); in __swap_writepage()
330 end_page_writeback(page); in __swap_writepage()
334 ret = bdev_write_page(sis->bdev, swap_page_sector(page), page, wbc); in __swap_writepage()
336 count_swpout_vm_event(page); in __swap_writepage()
342 bio->bi_iter.bi_sector = swap_page_sector(page); in __swap_writepage()
345 bio_add_page(bio, page, thp_size(page), 0); in __swap_writepage()
347 bio_associate_blkg_from_page(bio, page); in __swap_writepage()
348 count_swpout_vm_event(page); in __swap_writepage()
349 set_page_writeback(page); in __swap_writepage()
350 unlock_page(page); in __swap_writepage()
356 int swap_readpage(struct page *page, bool synchronous) in swap_readpage() argument
360 struct swap_info_struct *sis = page_swap_info(page); in swap_readpage()
363 VM_BUG_ON_PAGE(!PageSwapCache(page) && !synchronous, page); in swap_readpage()
364 VM_BUG_ON_PAGE(!PageLocked(page), page); in swap_readpage()
365 VM_BUG_ON_PAGE(PageUptodate(page), page); in swap_readpage()
374 if (frontswap_load(page) == 0) { in swap_readpage()
375 SetPageUptodate(page); in swap_readpage()
376 unlock_page(page); in swap_readpage()
384 ret = mapping->a_ops->readpage(swap_file, page); in swap_readpage()
391 ret = bdev_read_page(sis->bdev, swap_page_sector(page), page); in swap_readpage()
393 if (trylock_page(page)) { in swap_readpage()
394 swap_slot_free_notify(page); in swap_readpage()
395 unlock_page(page); in swap_readpage()
407 bio->bi_iter.bi_sector = swap_page_sector(page); in swap_readpage()
409 bio_add_page(bio, page, thp_size(page), 0); in swap_readpage()
438 int swap_set_page_dirty(struct page *page) in swap_set_page_dirty() argument
440 struct swap_info_struct *sis = page_swap_info(page); in swap_set_page_dirty()
445 VM_BUG_ON_PAGE(!PageSwapCache(page), page); in swap_set_page_dirty()
446 return mapping->a_ops->set_page_dirty(page); in swap_set_page_dirty()
448 return __set_page_dirty_no_writeback(page); in swap_set_page_dirty()