diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2009-10-29 06:46:12 -0400 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2009-10-29 06:46:12 -0400 |
commit | 592b09a42fc3ae6737a0f3ecf4fee42ecd0296f8 (patch) | |
tree | d06ca7165c5dfc5224910993b36a50e54a896831 /virt | |
parent | 960cc0f4fef607baabc2232fbd7cce5368a9dcfd (diff) |
backing-dev: ensure that a removed bdi no longer has super_block referencing it
When the bdi is being removed, we have to ensure that no super_blocks
currently have that cached in sb->s_bdi. Normally this is ensured by
the sb having a longer life span than the bdi, but if the device is
suddenly yanked, we have to kill this reference. sb->s_bdi is pointed
to freed memory at that point.
This fixes a problem with sync(1) hanging when a USB stick is pulled
without cleanly umounting it first.
Reported-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'virt')
0 files changed, 0 insertions, 0 deletions