summaryrefslogtreecommitdiffstats
path: root/fs/buffer.c
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2006-08-03 17:35:48 -0400
committerJeff Garzik <jeff@garzik.org>2006-08-03 17:35:48 -0400
commit36a2c6b28003dd0592b8ece5e9409991e0820f50 (patch)
treec5b52547b2658a8a3b898b8224b835a7e8396017 /fs/buffer.c
parent95916edd02e3a7752315422f386c55723d4a3637 (diff)
parentf1d39b291e2263f5e2f2ec5d4061802f76d8ae67 (diff)
downloadkernel-crypto-36a2c6b28003dd0592b8ece5e9409991e0820f50.tar.gz
kernel-crypto-36a2c6b28003dd0592b8ece5e9409991e0820f50.tar.xz
kernel-crypto-36a2c6b28003dd0592b8ece5e9409991e0820f50.zip
Merge branch 'upstream-fixes' into upstream
Diffstat (limited to 'fs/buffer.c')
-rw-r--r--fs/buffer.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/buffer.c b/fs/buffer.c
index 3660dcb9759..71649ef9b65 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -470,13 +470,18 @@ out:
pass does the actual I/O. */
void invalidate_bdev(struct block_device *bdev, int destroy_dirty_buffers)
{
+ struct address_space *mapping = bdev->bd_inode->i_mapping;
+
+ if (mapping->nrpages == 0)
+ return;
+
invalidate_bh_lrus();
/*
* FIXME: what about destroy_dirty_buffers?
* We really want to use invalidate_inode_pages2() for
* that, but not until that's cleaned up.
*/
- invalidate_inode_pages(bdev->bd_inode->i_mapping);
+ invalidate_inode_pages(mapping);
}
/*