• Tejun Heo's avatar
    bdi: reimplement bdev_inode_switch_bdi() · 018a17bd
    Tejun Heo authored
    A block_device may be attached to different gendisks and thus
    different bdis over time.  bdev_inode_switch_bdi() is used to switch
    the associated bdi.  The function assumes that the inode could be
    dirty and transfers it between bdis if so.  This is a bit nasty in
    that it reaches into bdi internals.
    
    This patch reimplements the function so that it writes out the inode
    if dirty.  This is a lot simpler and can be implemented without
    exposing bdi internals.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: default avatarJens Axboe <axboe@fb.com>
    018a17bd
block_dev.c 43.8 KB