diff options
Diffstat (limited to 'fs/block_dev.c')
| -rw-r--r-- | fs/block_dev.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/block_dev.c b/fs/block_dev.c index 93d088ffc05c..789f55e851ae 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c @@ -716,10 +716,12 @@ int bdev_write_page(struct block_device *bdev, sector_t sector,  	set_page_writeback(page);  	result = ops->rw_page(bdev, sector + get_start_sect(bdev), page, true); -	if (result) +	if (result) {  		end_page_writeback(page); -	else +	} else { +		clean_page_buffers(page);  		unlock_page(page); +	}  	blk_queue_exit(bdev->bd_queue);  	return result;  }  |