diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-28 13:07:27 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-28 13:07:27 -0400 |
commit | 529b73fc0a9764050dcc597f4851728e8ff59165 (patch) | |
tree | d22dc4bf4d7523ea1c41790f8e52805b4ea75f19 /fs/fs-writeback.c | |
parent | 69e1aaddd63104f37021d0b0f6abfd9623c9134c (diff) | |
parent | 697e6fed9fc620eb6c79ebcfe6865b66773c0221 (diff) |
Merge tag 'writeback-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux
Pull trivial writeback fixes from Wu Fengguang:
"They've been tested in linux-next for 20 days actually."
* tag 'writeback-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux:
writeback: Remove outdated comment
fs: Remove bogus wait in write_inode_now()
Diffstat (limited to 'fs/fs-writeback.c')
-rw-r--r-- | fs/fs-writeback.c | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index 236972b752f5..539f36cf3e4a 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c | |||
@@ -256,7 +256,8 @@ static bool inode_dirtied_after(struct inode *inode, unsigned long t) | |||
256 | } | 256 | } |
257 | 257 | ||
258 | /* | 258 | /* |
259 | * Move expired dirty inodes from @delaying_queue to @dispatch_queue. | 259 | * Move expired (dirtied after work->older_than_this) dirty inodes from |
260 | * @delaying_queue to @dispatch_queue. | ||
260 | */ | 261 | */ |
261 | static int move_expired_inodes(struct list_head *delaying_queue, | 262 | static int move_expired_inodes(struct list_head *delaying_queue, |
262 | struct list_head *dispatch_queue, | 263 | struct list_head *dispatch_queue, |
@@ -1148,23 +1149,6 @@ out_unlock_inode: | |||
1148 | } | 1149 | } |
1149 | EXPORT_SYMBOL(__mark_inode_dirty); | 1150 | EXPORT_SYMBOL(__mark_inode_dirty); |
1150 | 1151 | ||
1151 | /* | ||
1152 | * Write out a superblock's list of dirty inodes. A wait will be performed | ||
1153 | * upon no inodes, all inodes or the final one, depending upon sync_mode. | ||
1154 | * | ||
1155 | * If older_than_this is non-NULL, then only write out inodes which | ||
1156 | * had their first dirtying at a time earlier than *older_than_this. | ||
1157 | * | ||
1158 | * If `bdi' is non-zero then we're being asked to writeback a specific queue. | ||
1159 | * This function assumes that the blockdev superblock's inodes are backed by | ||
1160 | * a variety of queues, so all inodes are searched. For other superblocks, | ||
1161 | * assume that all inodes are backed by the same queue. | ||
1162 | * | ||
1163 | * The inodes to be written are parked on bdi->b_io. They are moved back onto | ||
1164 | * bdi->b_dirty as they are selected for writing. This way, none can be missed | ||
1165 | * on the writer throttling path, and we get decent balancing between many | ||
1166 | * throttled threads: we don't want them all piling up on inode_sync_wait. | ||
1167 | */ | ||
1168 | static void wait_sb_inodes(struct super_block *sb) | 1152 | static void wait_sb_inodes(struct super_block *sb) |
1169 | { | 1153 | { |
1170 | struct inode *inode, *old_inode = NULL; | 1154 | struct inode *inode, *old_inode = NULL; |
@@ -1364,8 +1348,6 @@ int write_inode_now(struct inode *inode, int sync) | |||
1364 | ret = writeback_single_inode(inode, wb, &wbc); | 1348 | ret = writeback_single_inode(inode, wb, &wbc); |
1365 | spin_unlock(&inode->i_lock); | 1349 | spin_unlock(&inode->i_lock); |
1366 | spin_unlock(&wb->list_lock); | 1350 | spin_unlock(&wb->list_lock); |
1367 | if (sync) | ||
1368 | inode_sync_wait(inode); | ||
1369 | return ret; | 1351 | return ret; |
1370 | } | 1352 | } |
1371 | EXPORT_SYMBOL(write_inode_now); | 1353 | EXPORT_SYMBOL(write_inode_now); |