diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-08-03 17:20:37 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-08-03 17:20:37 -0400 |
commit | 23946a8a980d13af7b84bcf3ce023e0d166ec83f (patch) | |
tree | 193d2959a7b62b48aaf2236447f1378779e55104 /fs/buffer.c | |
parent | 66e8bb97055ff22a0e5ea89c0a75a35f8738cc96 (diff) | |
parent | 2b14c30b46e007a16c665cc86329bf4a1d9ff6ee (diff) |
Merge branch 'upstream-fixes' into upstream
Diffstat (limited to 'fs/buffer.c')
-rw-r--r-- | fs/buffer.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/buffer.c b/fs/buffer.c index 3660dcb97591..71649ef9b658 100644 --- a/fs/buffer.c +++ b/fs/buffer.c | |||
@@ -470,13 +470,18 @@ out: | |||
470 | pass does the actual I/O. */ | 470 | pass does the actual I/O. */ |
471 | void invalidate_bdev(struct block_device *bdev, int destroy_dirty_buffers) | 471 | void invalidate_bdev(struct block_device *bdev, int destroy_dirty_buffers) |
472 | { | 472 | { |
473 | struct address_space *mapping = bdev->bd_inode->i_mapping; | ||
474 | |||
475 | if (mapping->nrpages == 0) | ||
476 | return; | ||
477 | |||
473 | invalidate_bh_lrus(); | 478 | invalidate_bh_lrus(); |
474 | /* | 479 | /* |
475 | * FIXME: what about destroy_dirty_buffers? | 480 | * FIXME: what about destroy_dirty_buffers? |
476 | * We really want to use invalidate_inode_pages2() for | 481 | * We really want to use invalidate_inode_pages2() for |
477 | * that, but not until that's cleaned up. | 482 | * that, but not until that's cleaned up. |
478 | */ | 483 | */ |
479 | invalidate_inode_pages(bdev->bd_inode->i_mapping); | 484 | invalidate_inode_pages(mapping); |
480 | } | 485 | } |
481 | 486 | ||
482 | /* | 487 | /* |