diff options
Diffstat (limited to 'fs/buffer.c')
| -rw-r--r-- | fs/buffer.c | 14 | 
1 files changed, 4 insertions, 10 deletions
diff --git a/fs/buffer.c b/fs/buffer.c index f903f2e5b4f..42534f67d71 100644 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -767,7 +767,7 @@ static int fsync_buffers_list(spinlock_t *lock, struct list_head *list)  				 * still in flight on potentially older  				 * contents.  				 */ -				write_dirty_buffer(bh, WRITE_SYNC_PLUG); +				write_dirty_buffer(bh, WRITE_SYNC);  				/*  				 * Kick off IO for the previous mapping. Note @@ -1602,14 +1602,8 @@ EXPORT_SYMBOL(unmap_underlying_metadata);   * prevents this contention from occurring.   *   * If block_write_full_page() is called with wbc->sync_mode == - * WB_SYNC_ALL, the writes are posted using WRITE_SYNC_PLUG; this - * causes the writes to be flagged as synchronous writes, but the - * block device queue will NOT be unplugged, since usually many pages - * will be pushed to the out before the higher-level caller actually - * waits for the writes to be completed.  The various wait functions, - * such as wait_on_writeback_range() will ultimately call sync_page() - * which will ultimately call blk_run_backing_dev(), which will end up - * unplugging the device queue. + * WB_SYNC_ALL, the writes are posted using WRITE_SYNC; this + * causes the writes to be flagged as synchronous writes.   */  static int __block_write_full_page(struct inode *inode, struct page *page,  			get_block_t *get_block, struct writeback_control *wbc, @@ -1622,7 +1616,7 @@ static int __block_write_full_page(struct inode *inode, struct page *page,  	const unsigned blocksize = 1 << inode->i_blkbits;  	int nr_underway = 0;  	int write_op = (wbc->sync_mode == WB_SYNC_ALL ? -			WRITE_SYNC_PLUG : WRITE); +			WRITE_SYNC : WRITE);  	BUG_ON(!PageLocked(page));  |