Lines Matching refs:mapping
2046 int balance_dirty_pages_ratelimited_flags(struct address_space *mapping, in balance_dirty_pages_ratelimited_flags() argument
2049 struct inode *inode = mapping->host; in balance_dirty_pages_ratelimited_flags()
2116 void balance_dirty_pages_ratelimited(struct address_space *mapping) in balance_dirty_pages_ratelimited() argument
2118 balance_dirty_pages_ratelimited_flags(mapping, 0); in balance_dirty_pages_ratelimited()
2383 void tag_pages_for_writeback(struct address_space *mapping, in tag_pages_for_writeback() argument
2386 XA_STATE(xas, &mapping->i_pages, start); in tag_pages_for_writeback()
2405 static bool folio_prepare_writeback(struct address_space *mapping, in folio_prepare_writeback() argument
2415 if (unlikely(folio->mapping != mapping)) in folio_prepare_writeback()
2445 static struct folio *writeback_get_folio(struct address_space *mapping, in writeback_get_folio() argument
2455 filemap_get_folios_tag(mapping, &wbc->index, wbc_end(wbc), in writeback_get_folio()
2463 if (unlikely(!folio_prepare_writeback(mapping, wbc, folio))) { in writeback_get_folio()
2468 trace_wbc_writepage(wbc, inode_to_bdi(mapping->host)); in writeback_get_folio()
2498 struct folio *writeback_iter(struct address_space *mapping, in writeback_iter() argument
2513 wbc->index = mapping->writeback_index; in writeback_iter()
2529 tag_pages_for_writeback(mapping, wbc->index, in writeback_iter()
2556 folio = writeback_get_folio(mapping, wbc); in writeback_iter()
2569 mapping->writeback_index = 0; in writeback_iter()
2581 mapping->writeback_index = folio_next_index(folio); in writeback_iter()
2587 int do_writepages(struct address_space *mapping, struct writeback_control *wbc) in do_writepages() argument
2594 wb = inode_to_wb_wbc(mapping->host, wbc); in do_writepages()
2597 if (mapping->a_ops->writepages) in do_writepages()
2598 ret = mapping->a_ops->writepages(mapping, wbc); in do_writepages()
2628 bool noop_dirty_folio(struct address_space *mapping, struct folio *folio) in noop_dirty_folio() argument
2642 struct address_space *mapping) in folio_account_dirtied() argument
2644 struct inode *inode = mapping->host; in folio_account_dirtied()
2646 trace_writeback_dirty_folio(folio, mapping); in folio_account_dirtied()
2648 if (mapping_can_writeback(mapping)) { in folio_account_dirtied()
2697 void __folio_mark_dirty(struct folio *folio, struct address_space *mapping, in __folio_mark_dirty() argument
2706 VM_WARN_ON_ONCE(folio_test_swapcache(folio) || shmem_mapping(mapping)); in __folio_mark_dirty()
2708 xa_lock_irqsave(&mapping->i_pages, flags); in __folio_mark_dirty()
2709 if (folio->mapping) { /* Race with truncate? */ in __folio_mark_dirty()
2711 folio_account_dirtied(folio, mapping); in __folio_mark_dirty()
2712 __xa_set_mark(&mapping->i_pages, folio->index, in __folio_mark_dirty()
2715 xa_unlock_irqrestore(&mapping->i_pages, flags); in __folio_mark_dirty()
2737 bool filemap_dirty_folio(struct address_space *mapping, struct folio *folio) in filemap_dirty_folio() argument
2742 __folio_mark_dirty(folio, mapping, !folio_test_private(folio)); in filemap_dirty_folio()
2744 if (mapping->host) { in filemap_dirty_folio()
2746 __mark_inode_dirty(mapping->host, I_DIRTY_PAGES); in filemap_dirty_folio()
2767 struct address_space *mapping = folio->mapping; in folio_redirty_for_writepage() local
2772 ret = filemap_dirty_folio(mapping, folio); in folio_redirty_for_writepage()
2773 if (mapping && mapping_can_writeback(mapping)) { in folio_redirty_for_writepage()
2774 struct inode *inode = mapping->host; in folio_redirty_for_writepage()
2803 struct address_space *mapping = folio_mapping(folio); in folio_mark_dirty() local
2805 if (likely(mapping)) { in folio_mark_dirty()
2819 return mapping->a_ops->dirty_folio(mapping, folio); in folio_mark_dirty()
2822 return noop_dirty_folio(mapping, folio); in folio_mark_dirty()
2862 struct address_space *mapping = folio_mapping(folio); in __folio_cancel_dirty() local
2864 if (mapping_can_writeback(mapping)) { in __folio_cancel_dirty()
2865 struct inode *inode = mapping->host; in __folio_cancel_dirty()
2897 struct address_space *mapping = folio_mapping(folio); in folio_clear_dirty_for_io() local
2902 if (mapping && mapping_can_writeback(mapping)) { in folio_clear_dirty_for_io()
2903 struct inode *inode = mapping->host; in folio_clear_dirty_for_io()
2982 struct address_space *mapping = folio_mapping(folio); in __folio_end_writeback() local
2985 if (mapping && mapping_use_writeback_tags(mapping)) { in __folio_end_writeback()
2986 struct inode *inode = mapping->host; in __folio_end_writeback()
2990 xa_lock_irqsave(&mapping->i_pages, flags); in __folio_end_writeback()
2992 __xa_clear_mark(&mapping->i_pages, folio->index, in __folio_end_writeback()
2998 if (!mapping_tagged(mapping, PAGECACHE_TAG_WRITEBACK)) { in __folio_end_writeback()
3000 if (mapping->host) in __folio_end_writeback()
3001 sb_clear_inode_writeback(mapping->host); in __folio_end_writeback()
3004 xa_unlock_irqrestore(&mapping->i_pages, flags); in __folio_end_writeback()
3019 struct address_space *mapping = folio_mapping(folio); in __folio_start_writeback() local
3025 if (mapping && mapping_use_writeback_tags(mapping)) { in __folio_start_writeback()
3026 XA_STATE(xas, &mapping->i_pages, folio->index); in __folio_start_writeback()
3027 struct inode *inode = mapping->host; in __folio_start_writeback()
3036 on_wblist = mapping_tagged(mapping, PAGECACHE_TAG_WRITEBACK); in __folio_start_writeback()
3048 if (mapping->host) in __folio_start_writeback()
3049 sb_mark_inode_writeback(mapping->host); in __folio_start_writeback()