fs: assign sb->s_bdi to default_backing_dev_info if the bdi is going away
authorJens Axboe <jaxboe@fusionio.com>
Thu, 17 Mar 2011 10:13:12 +0000 (11:13 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sun, 27 Mar 2011 18:36:26 +0000 (11:36 -0700)
commit857754c982ffd7af7683cb5d39288db65c990bad
treedbf6db3feb3c27572df90f60a4dafd0293a66c45
parent305c88ab06302e186aba8376a2b5c579a5c92291
fs: assign sb->s_bdi to default_backing_dev_info if the bdi is going away

commit 95f28604a65b1c40b6c6cd95e58439cd7ded3add upstream.

We don't have proper reference counting for this yet, so we run into
cases where the device is pulled and we OOPS on flushing the fs data.
This happens even though the dirty inodes have already been
migrated to the default_backing_dev_info.

Reported-by: Torsten Hilbrich <torsten.hilbrich@secunet.com>
Tested-by: Torsten Hilbrich <torsten.hilbrich@secunet.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/super.c
fs/sync.c
mm/backing-dev.c