Lines Matching refs:inode

70 static inline struct inode *wb_inode(struct list_head *head)  in wb_inode()
72 return list_entry(head, struct inode, i_io_list); in wb_inode()
118 static bool inode_io_list_move_locked(struct inode *inode, in inode_io_list_move_locked() argument
123 assert_spin_locked(&inode->i_lock); in inode_io_list_move_locked()
124 WARN_ON_ONCE(inode->i_state & I_FREEING); in inode_io_list_move_locked()
126 list_move(&inode->i_io_list, head); in inode_io_list_move_locked()
259 / sizeof(struct inode *))
264 void __inode_attach_wb(struct inode *inode, struct folio *folio) in __inode_attach_wb() argument
266 struct backing_dev_info *bdi = inode_to_bdi(inode); in __inode_attach_wb()
269 if (inode_cgwb_enabled(inode)) { in __inode_attach_wb()
290 if (unlikely(cmpxchg(&inode->i_wb, NULL, wb))) in __inode_attach_wb()
302 static void inode_cgwb_move_to_attached(struct inode *inode, in inode_cgwb_move_to_attached() argument
306 assert_spin_locked(&inode->i_lock); in inode_cgwb_move_to_attached()
307 WARN_ON_ONCE(inode->i_state & I_FREEING); in inode_cgwb_move_to_attached()
309 inode->i_state &= ~I_SYNC_QUEUED; in inode_cgwb_move_to_attached()
311 list_move(&inode->i_io_list, &wb->b_attached); in inode_cgwb_move_to_attached()
313 list_del_init(&inode->i_io_list); in inode_cgwb_move_to_attached()
326 locked_inode_to_wb_and_lock_list(struct inode *inode) in locked_inode_to_wb_and_lock_list() argument
327 __releases(&inode->i_lock) in locked_inode_to_wb_and_lock_list()
331 struct bdi_writeback *wb = inode_to_wb(inode); in locked_inode_to_wb_and_lock_list()
340 spin_unlock(&inode->i_lock); in locked_inode_to_wb_and_lock_list()
344 if (likely(wb == inode->i_wb)) { in locked_inode_to_wb_and_lock_list()
352 spin_lock(&inode->i_lock); in locked_inode_to_wb_and_lock_list()
363 static struct bdi_writeback *inode_to_wb_and_lock_list(struct inode *inode) in inode_to_wb_and_lock_list() argument
366 spin_lock(&inode->i_lock); in inode_to_wb_and_lock_list()
367 return locked_inode_to_wb_and_lock_list(inode); in inode_to_wb_and_lock_list()
382 struct inode *inodes[];
395 static bool inode_do_switch_wbs(struct inode *inode, in inode_do_switch_wbs() argument
399 struct address_space *mapping = inode->i_mapping; in inode_do_switch_wbs()
404 spin_lock(&inode->i_lock); in inode_do_switch_wbs()
411 if (unlikely(inode->i_state & (I_FREEING | I_WILL_FREE))) in inode_do_switch_wbs()
414 trace_inode_switch_wbs(inode, old_wb, new_wb); in inode_do_switch_wbs()
452 if (!list_empty(&inode->i_io_list)) { in inode_do_switch_wbs()
453 inode->i_wb = new_wb; in inode_do_switch_wbs()
455 if (inode->i_state & I_DIRTY_ALL) { in inode_do_switch_wbs()
456 struct inode *pos; in inode_do_switch_wbs()
459 if (time_after_eq(inode->dirtied_when, in inode_do_switch_wbs()
462 inode_io_list_move_locked(inode, new_wb, in inode_do_switch_wbs()
465 inode_cgwb_move_to_attached(inode, new_wb); in inode_do_switch_wbs()
468 inode->i_wb = new_wb; in inode_do_switch_wbs()
472 inode->i_wb_frn_winner = 0; in inode_do_switch_wbs()
473 inode->i_wb_frn_avg_time = 0; in inode_do_switch_wbs()
474 inode->i_wb_frn_history = 0; in inode_do_switch_wbs()
481 smp_store_release(&inode->i_state, inode->i_state & ~I_WB_SWITCH); in inode_do_switch_wbs()
484 spin_unlock(&inode->i_lock); in inode_do_switch_wbs()
497 struct inode **inodep; in inode_switch_wbs_work_fn()
546 static bool inode_prepare_wbs_switch(struct inode *inode, in inode_prepare_wbs_switch() argument
557 if (IS_DAX(inode)) in inode_prepare_wbs_switch()
561 spin_lock(&inode->i_lock); in inode_prepare_wbs_switch()
562 if (!(inode->i_sb->s_flags & SB_ACTIVE) || in inode_prepare_wbs_switch()
563 inode->i_state & (I_WB_SWITCH | I_FREEING | I_WILL_FREE) || in inode_prepare_wbs_switch()
564 inode_to_wb(inode) == new_wb) { in inode_prepare_wbs_switch()
565 spin_unlock(&inode->i_lock); in inode_prepare_wbs_switch()
568 inode->i_state |= I_WB_SWITCH; in inode_prepare_wbs_switch()
569 __iget(inode); in inode_prepare_wbs_switch()
570 spin_unlock(&inode->i_lock); in inode_prepare_wbs_switch()
583 static void inode_switch_wbs(struct inode *inode, int new_wb_id) in inode_switch_wbs() argument
585 struct backing_dev_info *bdi = inode_to_bdi(inode); in inode_switch_wbs()
590 if (inode->i_state & I_WB_SWITCH) in inode_switch_wbs()
617 if (!inode_prepare_wbs_switch(inode, isw->new_wb)) in inode_switch_wbs()
620 isw->inodes[0] = inode; in inode_switch_wbs()
642 struct inode *inode; in isw_prepare_wbs_switch() local
644 list_for_each_entry(inode, list, i_io_list) { in isw_prepare_wbs_switch()
645 if (!inode_prepare_wbs_switch(inode, isw->new_wb)) in isw_prepare_wbs_switch()
648 isw->inodes[*nr] = inode; in isw_prepare_wbs_switch()
734 struct inode *inode) in wbc_attach_and_unlock_inode() argument
735 __releases(&inode->i_lock) in wbc_attach_and_unlock_inode()
737 if (!inode_cgwb_enabled(inode)) { in wbc_attach_and_unlock_inode()
738 spin_unlock(&inode->i_lock); in wbc_attach_and_unlock_inode()
742 wbc->wb = inode_to_wb(inode); in wbc_attach_and_unlock_inode()
743 wbc->inode = inode; in wbc_attach_and_unlock_inode()
746 wbc->wb_lcand_id = inode->i_wb_frn_winner; in wbc_attach_and_unlock_inode()
753 spin_unlock(&inode->i_lock); in wbc_attach_and_unlock_inode()
763 inode_switch_wbs(inode, wbc->wb_id); in wbc_attach_and_unlock_inode()
776 struct inode *inode) in wbc_attach_fdatawrite_inode() argument
778 spin_lock(&inode->i_lock); in wbc_attach_fdatawrite_inode()
779 inode_attach_wb(inode, NULL); in wbc_attach_fdatawrite_inode()
780 wbc_attach_and_unlock_inode(wbc, inode); in wbc_attach_fdatawrite_inode()
824 struct inode *inode = wbc->inode; in wbc_detach_inode() local
832 history = inode->i_wb_frn_history; in wbc_detach_inode()
833 avg_time = inode->i_wb_frn_avg_time; in wbc_detach_inode()
881 trace_inode_foreign_history(inode, wbc, history); in wbc_detach_inode()
891 inode_switch_wbs(inode, max_id); in wbc_detach_inode()
898 inode->i_wb_frn_winner = max_id; in wbc_detach_inode()
899 inode->i_wb_frn_avg_time = min(avg_time, (unsigned long)U16_MAX); in wbc_detach_inode()
900 inode->i_wb_frn_history = history; in wbc_detach_inode()
1195 static void inode_cgwb_move_to_attached(struct inode *inode, in inode_cgwb_move_to_attached() argument
1199 assert_spin_locked(&inode->i_lock); in inode_cgwb_move_to_attached()
1200 WARN_ON_ONCE(inode->i_state & I_FREEING); in inode_cgwb_move_to_attached()
1202 inode->i_state &= ~I_SYNC_QUEUED; in inode_cgwb_move_to_attached()
1203 list_del_init(&inode->i_io_list); in inode_cgwb_move_to_attached()
1208 locked_inode_to_wb_and_lock_list(struct inode *inode) in locked_inode_to_wb_and_lock_list() argument
1209 __releases(&inode->i_lock) in locked_inode_to_wb_and_lock_list()
1212 struct bdi_writeback *wb = inode_to_wb(inode); in locked_inode_to_wb_and_lock_list()
1214 spin_unlock(&inode->i_lock); in locked_inode_to_wb_and_lock_list()
1219 static struct bdi_writeback *inode_to_wb_and_lock_list(struct inode *inode) in inode_to_wb_and_lock_list() argument
1222 struct bdi_writeback *wb = inode_to_wb(inode); in inode_to_wb_and_lock_list()
1246 struct inode *inode) in wbc_attach_and_unlock_inode() argument
1247 __releases(&inode->i_lock) in wbc_attach_and_unlock_inode()
1249 spin_unlock(&inode->i_lock); in wbc_attach_and_unlock_inode()
1308 void inode_io_list_del(struct inode *inode) in inode_io_list_del() argument
1312 wb = inode_to_wb_and_lock_list(inode); in inode_io_list_del()
1313 spin_lock(&inode->i_lock); in inode_io_list_del()
1315 inode->i_state &= ~I_SYNC_QUEUED; in inode_io_list_del()
1316 list_del_init(&inode->i_io_list); in inode_io_list_del()
1319 spin_unlock(&inode->i_lock); in inode_io_list_del()
1327 void sb_mark_inode_writeback(struct inode *inode) in sb_mark_inode_writeback() argument
1329 struct super_block *sb = inode->i_sb; in sb_mark_inode_writeback()
1332 if (list_empty(&inode->i_wb_list)) { in sb_mark_inode_writeback()
1334 if (list_empty(&inode->i_wb_list)) { in sb_mark_inode_writeback()
1335 list_add_tail(&inode->i_wb_list, &sb->s_inodes_wb); in sb_mark_inode_writeback()
1336 trace_sb_mark_inode_writeback(inode); in sb_mark_inode_writeback()
1345 void sb_clear_inode_writeback(struct inode *inode) in sb_clear_inode_writeback() argument
1347 struct super_block *sb = inode->i_sb; in sb_clear_inode_writeback()
1350 if (!list_empty(&inode->i_wb_list)) { in sb_clear_inode_writeback()
1352 if (!list_empty(&inode->i_wb_list)) { in sb_clear_inode_writeback()
1353 list_del_init(&inode->i_wb_list); in sb_clear_inode_writeback()
1354 trace_sb_clear_inode_writeback(inode); in sb_clear_inode_writeback()
1369 static void redirty_tail_locked(struct inode *inode, struct bdi_writeback *wb) in redirty_tail_locked() argument
1371 assert_spin_locked(&inode->i_lock); in redirty_tail_locked()
1373 inode->i_state &= ~I_SYNC_QUEUED; in redirty_tail_locked()
1379 if (inode->i_state & I_FREEING) { in redirty_tail_locked()
1380 list_del_init(&inode->i_io_list); in redirty_tail_locked()
1385 struct inode *tail; in redirty_tail_locked()
1388 if (time_before(inode->dirtied_when, tail->dirtied_when)) in redirty_tail_locked()
1389 inode->dirtied_when = jiffies; in redirty_tail_locked()
1391 inode_io_list_move_locked(inode, wb, &wb->b_dirty); in redirty_tail_locked()
1394 static void redirty_tail(struct inode *inode, struct bdi_writeback *wb) in redirty_tail() argument
1396 spin_lock(&inode->i_lock); in redirty_tail()
1397 redirty_tail_locked(inode, wb); in redirty_tail()
1398 spin_unlock(&inode->i_lock); in redirty_tail()
1404 static void requeue_io(struct inode *inode, struct bdi_writeback *wb) in requeue_io() argument
1406 inode_io_list_move_locked(inode, wb, &wb->b_more_io); in requeue_io()
1409 static void inode_sync_complete(struct inode *inode) in inode_sync_complete() argument
1411 assert_spin_locked(&inode->i_lock); in inode_sync_complete()
1413 inode->i_state &= ~I_SYNC; in inode_sync_complete()
1415 inode_add_lru(inode); in inode_sync_complete()
1417 inode_wake_up_bit(inode, __I_SYNC); in inode_sync_complete()
1420 static bool inode_dirtied_after(struct inode *inode, unsigned long t) in inode_dirtied_after() argument
1422 bool ret = time_after(inode->dirtied_when, t); in inode_dirtied_after()
1430 ret = ret && time_before_eq(inode->dirtied_when, jiffies); in inode_dirtied_after()
1446 struct inode *inode; in move_expired_inodes() local
1451 inode = wb_inode(delaying_queue->prev); in move_expired_inodes()
1452 if (inode_dirtied_after(inode, dirtied_before)) in move_expired_inodes()
1454 spin_lock(&inode->i_lock); in move_expired_inodes()
1455 list_move(&inode->i_io_list, &tmp); in move_expired_inodes()
1457 inode->i_state |= I_SYNC_QUEUED; in move_expired_inodes()
1458 spin_unlock(&inode->i_lock); in move_expired_inodes()
1459 if (sb_is_blkdev_sb(inode->i_sb)) in move_expired_inodes()
1461 if (sb && sb != inode->i_sb) in move_expired_inodes()
1463 sb = inode->i_sb; in move_expired_inodes()
1481 inode = wb_inode(pos); in move_expired_inodes()
1482 if (inode->i_sb == sb) in move_expired_inodes()
1483 list_move(&inode->i_io_list, dispatch_queue); in move_expired_inodes()
1519 static int write_inode(struct inode *inode, struct writeback_control *wbc) in write_inode() argument
1523 if (inode->i_sb->s_op->write_inode && !is_bad_inode(inode)) { in write_inode()
1524 trace_writeback_write_inode_start(inode, wbc); in write_inode()
1525 ret = inode->i_sb->s_op->write_inode(inode, wbc); in write_inode()
1526 trace_writeback_write_inode(inode, wbc); in write_inode()
1536 void inode_wait_for_writeback(struct inode *inode) in inode_wait_for_writeback() argument
1541 assert_spin_locked(&inode->i_lock); in inode_wait_for_writeback()
1543 if (!(inode->i_state & I_SYNC)) in inode_wait_for_writeback()
1546 wq_head = inode_bit_waitqueue(&wqe, inode, __I_SYNC); in inode_wait_for_writeback()
1550 if (!(inode->i_state & I_SYNC)) in inode_wait_for_writeback()
1552 spin_unlock(&inode->i_lock); in inode_wait_for_writeback()
1554 spin_lock(&inode->i_lock); in inode_wait_for_writeback()
1564 static void inode_sleep_on_writeback(struct inode *inode) in inode_sleep_on_writeback() argument
1565 __releases(inode->i_lock) in inode_sleep_on_writeback()
1571 assert_spin_locked(&inode->i_lock); in inode_sleep_on_writeback()
1573 wq_head = inode_bit_waitqueue(&wqe, inode, __I_SYNC); in inode_sleep_on_writeback()
1576 sleep = !!(inode->i_state & I_SYNC); in inode_sleep_on_writeback()
1577 spin_unlock(&inode->i_lock); in inode_sleep_on_writeback()
1591 static void requeue_inode(struct inode *inode, struct bdi_writeback *wb, in requeue_inode() argument
1595 if (inode->i_state & I_FREEING) in requeue_inode()
1603 if ((inode->i_state & I_DIRTY) && in requeue_inode()
1605 inode->dirtied_when = jiffies; in requeue_inode()
1614 if (inode->i_state & I_DIRTY_ALL) in requeue_inode()
1615 redirty_tail_locked(inode, wb); in requeue_inode()
1617 inode_cgwb_move_to_attached(inode, wb); in requeue_inode()
1621 if (mapping_tagged(inode->i_mapping, PAGECACHE_TAG_DIRTY)) { in requeue_inode()
1627 !inode_dirtied_after(inode, dirtied_before)) { in requeue_inode()
1629 requeue_io(inode, wb); in requeue_inode()
1638 redirty_tail_locked(inode, wb); in requeue_inode()
1640 } else if (inode->i_state & I_DIRTY) { in requeue_inode()
1646 redirty_tail_locked(inode, wb); in requeue_inode()
1647 } else if (inode->i_state & I_DIRTY_TIME) { in requeue_inode()
1648 inode->dirtied_when = jiffies; in requeue_inode()
1649 inode_io_list_move_locked(inode, wb, &wb->b_dirty_time); in requeue_inode()
1650 inode->i_state &= ~I_SYNC_QUEUED; in requeue_inode()
1653 inode_cgwb_move_to_attached(inode, wb); in requeue_inode()
1669 __writeback_single_inode(struct inode *inode, struct writeback_control *wbc) in __writeback_single_inode() argument
1671 struct address_space *mapping = inode->i_mapping; in __writeback_single_inode()
1676 WARN_ON(!(inode->i_state & I_SYNC)); in __writeback_single_inode()
1678 trace_writeback_single_inode_start(inode, wbc, nr_to_write); in __writeback_single_inode()
1700 if ((inode->i_state & I_DIRTY_TIME) && in __writeback_single_inode()
1702 time_after(jiffies, inode->dirtied_time_when + in __writeback_single_inode()
1704 trace_writeback_lazytime(inode); in __writeback_single_inode()
1705 mark_inode_dirty_sync(inode); in __writeback_single_inode()
1714 spin_lock(&inode->i_lock); in __writeback_single_inode()
1715 dirty = inode->i_state & I_DIRTY; in __writeback_single_inode()
1716 inode->i_state &= ~dirty; in __writeback_single_inode()
1732 inode->i_state |= I_DIRTY_PAGES; in __writeback_single_inode()
1733 else if (unlikely(inode->i_state & I_PINNING_NETFS_WB)) { in __writeback_single_inode()
1734 if (!(inode->i_state & I_DIRTY_PAGES)) { in __writeback_single_inode()
1735 inode->i_state &= ~I_PINNING_NETFS_WB; in __writeback_single_inode()
1741 spin_unlock(&inode->i_lock); in __writeback_single_inode()
1745 int err = write_inode(inode, wbc); in __writeback_single_inode()
1750 trace_writeback_single_inode(inode, wbc, nr_to_write); in __writeback_single_inode()
1763 static int writeback_single_inode(struct inode *inode, in writeback_single_inode() argument
1769 spin_lock(&inode->i_lock); in writeback_single_inode()
1770 if (!atomic_read(&inode->i_count)) in writeback_single_inode()
1771 WARN_ON(!(inode->i_state & (I_WILL_FREE|I_FREEING))); in writeback_single_inode()
1773 WARN_ON(inode->i_state & I_WILL_FREE); in writeback_single_inode()
1775 if (inode->i_state & I_SYNC) { in writeback_single_inode()
1784 inode_wait_for_writeback(inode); in writeback_single_inode()
1786 WARN_ON(inode->i_state & I_SYNC); in writeback_single_inode()
1794 if (!(inode->i_state & I_DIRTY_ALL) && in writeback_single_inode()
1796 !mapping_tagged(inode->i_mapping, PAGECACHE_TAG_WRITEBACK))) in writeback_single_inode()
1798 inode->i_state |= I_SYNC; in writeback_single_inode()
1799 wbc_attach_and_unlock_inode(wbc, inode); in writeback_single_inode()
1801 ret = __writeback_single_inode(inode, wbc); in writeback_single_inode()
1805 wb = inode_to_wb_and_lock_list(inode); in writeback_single_inode()
1806 spin_lock(&inode->i_lock); in writeback_single_inode()
1811 if (!(inode->i_state & I_FREEING)) { in writeback_single_inode()
1817 if (!(inode->i_state & I_DIRTY_ALL)) in writeback_single_inode()
1818 inode_cgwb_move_to_attached(inode, wb); in writeback_single_inode()
1819 else if (!(inode->i_state & I_SYNC_QUEUED)) { in writeback_single_inode()
1820 if ((inode->i_state & I_DIRTY)) in writeback_single_inode()
1821 redirty_tail_locked(inode, wb); in writeback_single_inode()
1822 else if (inode->i_state & I_DIRTY_TIME) { in writeback_single_inode()
1823 inode->dirtied_when = jiffies; in writeback_single_inode()
1824 inode_io_list_move_locked(inode, in writeback_single_inode()
1832 inode_sync_complete(inode); in writeback_single_inode()
1834 spin_unlock(&inode->i_lock); in writeback_single_inode()
1902 struct inode *inode = wb_inode(wb->b_io.prev); in writeback_sb_inodes() local
1906 if (inode->i_sb != sb) { in writeback_sb_inodes()
1913 redirty_tail(inode, wb); in writeback_sb_inodes()
1930 spin_lock(&inode->i_lock); in writeback_sb_inodes()
1931 if (inode->i_state & (I_NEW | I_FREEING | I_WILL_FREE)) { in writeback_sb_inodes()
1932 redirty_tail_locked(inode, wb); in writeback_sb_inodes()
1933 spin_unlock(&inode->i_lock); in writeback_sb_inodes()
1936 if ((inode->i_state & I_SYNC) && wbc.sync_mode != WB_SYNC_ALL) { in writeback_sb_inodes()
1946 requeue_io(inode, wb); in writeback_sb_inodes()
1947 spin_unlock(&inode->i_lock); in writeback_sb_inodes()
1948 trace_writeback_sb_inodes_requeue(inode); in writeback_sb_inodes()
1958 if (inode->i_state & I_SYNC) { in writeback_sb_inodes()
1960 inode_sleep_on_writeback(inode); in writeback_sb_inodes()
1965 inode->i_state |= I_SYNC; in writeback_sb_inodes()
1966 wbc_attach_and_unlock_inode(&wbc, inode); in writeback_sb_inodes()
1976 __writeback_single_inode(inode, &wbc); in writeback_sb_inodes()
2001 tmp_wb = inode_to_wb_and_lock_list(inode); in writeback_sb_inodes()
2002 spin_lock(&inode->i_lock); in writeback_sb_inodes()
2003 if (!(inode->i_state & I_DIRTY_ALL)) in writeback_sb_inodes()
2005 requeue_inode(inode, tmp_wb, &wbc, dirtied_before); in writeback_sb_inodes()
2006 inode_sync_complete(inode); in writeback_sb_inodes()
2007 spin_unlock(&inode->i_lock); in writeback_sb_inodes()
2035 struct inode *inode = wb_inode(wb->b_io.prev); in __writeback_inodes_wb() local
2036 struct super_block *sb = inode->i_sb; in __writeback_inodes_wb()
2044 redirty_tail(inode, wb); in __writeback_inodes_wb()
2104 struct inode *inode; in wb_writeback() local
2188 inode = wb_inode(wb->b_more_io.prev); in wb_writeback()
2189 spin_lock(&inode->i_lock); in wb_writeback()
2192 inode_sleep_on_writeback(inode); in wb_writeback()
2495 void __mark_inode_dirty(struct inode *inode, int flags) in __mark_inode_dirty() argument
2497 struct super_block *sb = inode->i_sb; in __mark_inode_dirty()
2501 trace_writeback_mark_inode_dirty(inode, flags); in __mark_inode_dirty()
2509 if (inode->i_state & I_DIRTY_TIME) { in __mark_inode_dirty()
2510 spin_lock(&inode->i_lock); in __mark_inode_dirty()
2511 if (inode->i_state & I_DIRTY_TIME) { in __mark_inode_dirty()
2512 inode->i_state &= ~I_DIRTY_TIME; in __mark_inode_dirty()
2515 spin_unlock(&inode->i_lock); in __mark_inode_dirty()
2525 trace_writeback_dirty_inode_start(inode, flags); in __mark_inode_dirty()
2527 sb->s_op->dirty_inode(inode, in __mark_inode_dirty()
2529 trace_writeback_dirty_inode(inode, flags); in __mark_inode_dirty()
2549 if ((inode->i_state & flags) == flags) in __mark_inode_dirty()
2552 spin_lock(&inode->i_lock); in __mark_inode_dirty()
2553 if ((inode->i_state & flags) != flags) { in __mark_inode_dirty()
2554 const int was_dirty = inode->i_state & I_DIRTY; in __mark_inode_dirty()
2556 inode_attach_wb(inode, NULL); in __mark_inode_dirty()
2558 inode->i_state |= flags; in __mark_inode_dirty()
2567 wb = locked_inode_to_wb_and_lock_list(inode); in __mark_inode_dirty()
2568 spin_lock(&inode->i_lock); in __mark_inode_dirty()
2577 if (inode->i_state & I_SYNC_QUEUED) in __mark_inode_dirty()
2584 if (!S_ISBLK(inode->i_mode)) { in __mark_inode_dirty()
2585 if (inode_unhashed(inode)) in __mark_inode_dirty()
2588 if (inode->i_state & I_FREEING) in __mark_inode_dirty()
2599 inode->dirtied_when = jiffies; in __mark_inode_dirty()
2601 inode->dirtied_time_when = jiffies; in __mark_inode_dirty()
2603 if (inode->i_state & I_DIRTY) in __mark_inode_dirty()
2608 wakeup_bdi = inode_io_list_move_locked(inode, wb, in __mark_inode_dirty()
2622 spin_unlock(&inode->i_lock); in __mark_inode_dirty()
2623 trace_writeback_dirty_inode_enqueue(inode); in __mark_inode_dirty()
2631 spin_unlock(&inode->i_lock); in __mark_inode_dirty()
2677 struct inode *inode = list_first_entry(&sync_list, struct inode, in wait_sb_inodes() local
2679 struct address_space *mapping = inode->i_mapping; in wait_sb_inodes()
2687 list_move_tail(&inode->i_wb_list, &sb->s_inodes_wb); in wait_sb_inodes()
2699 spin_lock(&inode->i_lock); in wait_sb_inodes()
2700 if (inode->i_state & (I_FREEING|I_WILL_FREE|I_NEW)) { in wait_sb_inodes()
2701 spin_unlock(&inode->i_lock); in wait_sb_inodes()
2706 __iget(inode); in wait_sb_inodes()
2707 spin_unlock(&inode->i_lock); in wait_sb_inodes()
2719 iput(inode); in wait_sb_inodes()
2851 int write_inode_now(struct inode *inode, int sync) in write_inode_now() argument
2860 if (!mapping_can_writeback(inode->i_mapping)) in write_inode_now()
2864 return writeback_single_inode(inode, &wbc); in write_inode_now()
2877 int sync_inode_metadata(struct inode *inode, int wait) in sync_inode_metadata() argument
2884 return writeback_single_inode(inode, &wbc); in sync_inode_metadata()