mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-01 10:42:11 +00:00
[PATCH] BLOCK: Move __invalidate_device() to block_dev.c [try #6]
Move __invalidate_device() from fs/inode.c to fs/block_dev.c so that it can more easily be disabled when the block layer is disabled. Signed-Off-By: David Howells <dhowells@redhat.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
811d736f9e
commit
b71e8a4ce0
@ -1315,3 +1315,24 @@ void close_bdev_excl(struct block_device *bdev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL(close_bdev_excl);
|
EXPORT_SYMBOL(close_bdev_excl);
|
||||||
|
|
||||||
|
int __invalidate_device(struct block_device *bdev)
|
||||||
|
{
|
||||||
|
struct super_block *sb = get_super(bdev);
|
||||||
|
int res = 0;
|
||||||
|
|
||||||
|
if (sb) {
|
||||||
|
/*
|
||||||
|
* no need to lock the super, get_super holds the
|
||||||
|
* read mutex so the filesystem cannot go away
|
||||||
|
* under us (->put_super runs with the write lock
|
||||||
|
* hold).
|
||||||
|
*/
|
||||||
|
shrink_dcache_sb(sb);
|
||||||
|
res = invalidate_inodes(sb);
|
||||||
|
drop_super(sb);
|
||||||
|
}
|
||||||
|
invalidate_bdev(bdev, 0);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL(__invalidate_device);
|
||||||
|
21
fs/inode.c
21
fs/inode.c
@ -362,27 +362,6 @@ int invalidate_inodes(struct super_block * sb)
|
|||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL(invalidate_inodes);
|
EXPORT_SYMBOL(invalidate_inodes);
|
||||||
|
|
||||||
int __invalidate_device(struct block_device *bdev)
|
|
||||||
{
|
|
||||||
struct super_block *sb = get_super(bdev);
|
|
||||||
int res = 0;
|
|
||||||
|
|
||||||
if (sb) {
|
|
||||||
/*
|
|
||||||
* no need to lock the super, get_super holds the
|
|
||||||
* read mutex so the filesystem cannot go away
|
|
||||||
* under us (->put_super runs with the write lock
|
|
||||||
* hold).
|
|
||||||
*/
|
|
||||||
shrink_dcache_sb(sb);
|
|
||||||
res = invalidate_inodes(sb);
|
|
||||||
drop_super(sb);
|
|
||||||
}
|
|
||||||
invalidate_bdev(bdev, 0);
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL(__invalidate_device);
|
|
||||||
|
|
||||||
static int can_unuse(struct inode *inode)
|
static int can_unuse(struct inode *inode)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user