diff options
Diffstat (limited to 'fs/fs-writeback.c')
-rw-r--r-- | fs/fs-writeback.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index 310972b72a66..359494ea1bde 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c | |||
@@ -318,8 +318,14 @@ static void queue_io(struct bdi_writeback *wb, struct wb_writeback_work *work) | |||
318 | 318 | ||
319 | static int write_inode(struct inode *inode, struct writeback_control *wbc) | 319 | static int write_inode(struct inode *inode, struct writeback_control *wbc) |
320 | { | 320 | { |
321 | if (inode->i_sb->s_op->write_inode && !is_bad_inode(inode)) | 321 | int ret; |
322 | return inode->i_sb->s_op->write_inode(inode, wbc); | 322 | |
323 | if (inode->i_sb->s_op->write_inode && !is_bad_inode(inode)) { | ||
324 | trace_writeback_write_inode_start(inode, wbc); | ||
325 | ret = inode->i_sb->s_op->write_inode(inode, wbc); | ||
326 | trace_writeback_write_inode(inode, wbc); | ||
327 | return ret; | ||
328 | } | ||
323 | return 0; | 329 | return 0; |
324 | } | 330 | } |
325 | 331 | ||
@@ -450,6 +456,8 @@ __writeback_single_inode(struct inode *inode, struct writeback_control *wbc) | |||
450 | 456 | ||
451 | WARN_ON(!(inode->i_state & I_SYNC)); | 457 | WARN_ON(!(inode->i_state & I_SYNC)); |
452 | 458 | ||
459 | trace_writeback_single_inode_start(inode, wbc, nr_to_write); | ||
460 | |||
453 | ret = do_writepages(mapping, wbc); | 461 | ret = do_writepages(mapping, wbc); |
454 | 462 | ||
455 | /* | 463 | /* |
@@ -1150,8 +1158,12 @@ void __mark_inode_dirty(struct inode *inode, int flags) | |||
1150 | * dirty the inode itself | 1158 | * dirty the inode itself |
1151 | */ | 1159 | */ |
1152 | if (flags & (I_DIRTY_SYNC | I_DIRTY_DATASYNC)) { | 1160 | if (flags & (I_DIRTY_SYNC | I_DIRTY_DATASYNC)) { |
1161 | trace_writeback_dirty_inode_start(inode, flags); | ||
1162 | |||
1153 | if (sb->s_op->dirty_inode) | 1163 | if (sb->s_op->dirty_inode) |
1154 | sb->s_op->dirty_inode(inode, flags); | 1164 | sb->s_op->dirty_inode(inode, flags); |
1165 | |||
1166 | trace_writeback_dirty_inode(inode, flags); | ||
1155 | } | 1167 | } |
1156 | 1168 | ||
1157 | /* | 1169 | /* |