Lines Matching full:writeback

3  * mm/page-writeback.c
24 #include <linux/writeback.h>
41 #include <trace/events/writeback.h>
65 * will look to see if it needs to force writeback or throttling.
72 * Start background writeback (via writeback threads) at this percentage
89 * The generator of dirty data starts writeback at this percentage
254 * requiring writeback.
443 * global_dirty_limits - background-writeback and dirty-throttling thresholds
871 * decide whether to put more under writeback.
882 unsigned long filepages = 0, headroom = 0, writeback = 0; in domain_dirty_avail() local
885 &writeback); in domain_dirty_avail()
887 dtc->dirty += writeback; in domain_dirty_avail()
1101 * 1% by default. Without strictlimit feature, fuse writeback may in wb_position_ratio()
1602 * time, a small pool of dirty/writeback pages may go empty and disk go in wb_max_pause()
1746 * Throttle it only when the background writeback cannot catch-up. This avoids
1827 * If we're over `background_thresh' then the writeback threads are woken to
1899 /* Start writeback even when in laptop mode */ in balance_dirty_pages()
2064 * dirty state and will initiate writeback if needed.
2138 * dirty state and will initiate writeback if needed.
2152 * and thresh, but it's for background writeback.
2183 * Determines whether background writeback should keep writing @wb or it's
2186 * Return: %true if writeback should continue.
2215 * Writing 0 to dirty_writeback_interval will disable periodic writeback in dirty_writeback_centisecs_handler()
2216 * and a different non-zero value will wakeup the writeback threads. in dirty_writeback_centisecs_handler()
2238 * We've spun up the disk and we're in laptop mode: schedule writeback
2249 * caused another writeback to be scheduled by laptop_io_completion.
2250 * Nothing needs to be written back anymore, so we unschedule the writeback.
2369 * Called early on to tune the page writeback dirty limits.
2388 cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, "mm/writeback:online", in page_writeback_init()
2390 cpuhp_setup_state(CPUHP_MM_WRITEBACK_DEAD, "mm/writeback:dead", NULL, in page_writeback_init()
2398 * tag_pages_for_writeback - tag pages to be written by writeback
2405 * can then use the TOWRITE tag to identify pages eligible for writeback.
2406 * This mechanism is used to avoid livelocking of writeback by a process
2507 * writeback_iter - iterate folio of a mapping for writeback
2509 * @wbc: writeback context
2511 * @error: in-out pointer for writeback errors (see below)
2513 * This function returns the next folio for the writeback operation described by
2517 * To start the writeback operation, %NULL is passed in the @folio argument, and
2521 * If there was an error in the per-folio writeback inside the writeback_iter()
2524 * Once the writeback described in @wbc has finished, this function will return
2540 * For range cyclic writeback we remember where we stopped so in writeback_iter()
2543 * For non-cyclic writeback we always start at the beginning of in writeback_iter()
2556 * For data-integrity writeback we have to be careful so that we in writeback_iter()
2571 * For integrity writeback we have to keep going until we have in writeback_iter()
2572 * written all the folios we tagged for writeback above, even if in writeback_iter()
2578 * For background writeback we exit as soon as we run past in writeback_iter()
2593 * To avoid deadlocks between range_cyclic writeback and callers in writeback_iter()
2595 * the writeback iteration finishes, we do not loop back to the in writeback_iter()
2597 * writeback access order inversion - we should only ever lock in writeback_iter()
2694 * Lacking an allocation context or the locality or writeback in do_writepages()
2696 * writeback activity on the local node. It's as good a in do_writepages()
2704 * but if there's constant writeback being submitted, this makes sure in do_writepages()
2705 * writeback bandwidth is updated once in a while. in do_writepages()
2759 * Helper function for deaccounting dirty page without writeback.
2844 * @wbc: The writeback control.
3008 * cause the writeback. in folio_clear_dirty_for_io()
3059 * Make sure estimate of writeback throughput gets updated after in wb_inode_writeback_end()
3060 * writeback completed. We delay the update by BANDWIDTH_INTERVAL in wb_inode_writeback_end()
3062 * that if multiple inodes end writeback at a similar time, they get in wb_inode_writeback_end()
3166 * If writeback has been triggered on a page that cannot be made in __folio_start_writeback()
3174 * folio_wait_writeback - Wait for a folio to finish writeback.
3182 * If the folio is not locked, writeback may start again after writeback
3195 * folio_wait_writeback_killable - Wait for a folio to finish writeback.
3203 * If the folio is not locked, writeback may start again after writeback
3220 * folio_wait_stable() - wait for writeback to finish, if necessary.
3224 * device that requires folio contents to be held stable during writeback.
3225 * If so, then it will wait for any pending writeback to complete.
3229 * If the folio is not locked, writeback may start again after writeback