diff options
| author | Andrew Morton <akpm@osdl.org> | 2004-02-18 04:49:23 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2004-02-18 04:49:23 -0800 |
| commit | 53b15b863e95defe1487a67e6ca5502a0b4d3e5f (patch) | |
| tree | bcf6b67cfcf94a307eb1e43db26048f987521169 | |
| parent | eaaec5b5db3d64efec42ce7c28c484f8e2cf8b8f (diff) | |
[PATCH] bd_set_size i_size handling
We need to hold i_sem while running i_size_write(). But that seems like a
lot of fuss and deadlock potential. So just write the dang thing.
| -rw-r--r-- | fs/block_dev.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/block_dev.c b/fs/block_dev.c index 97ef9c120146..3ec47cccec98 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c @@ -525,7 +525,8 @@ EXPORT_SYMBOL(check_disk_change); static void bd_set_size(struct block_device *bdev, loff_t size) { unsigned bsize = bdev_hardsect_size(bdev); - i_size_write(bdev->bd_inode, size); + + bdev->bd_inode->i_size = size; while (bsize < PAGE_CACHE_SIZE) { if (size & bsize) break; |
