diff options
Diffstat (limited to 'drivers/block/xen-blkfront.c')
-rw-r--r-- | drivers/block/xen-blkfront.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c index 657873e4328d..d7aa39e349a6 100644 --- a/drivers/block/xen-blkfront.c +++ b/drivers/block/xen-blkfront.c | |||
@@ -547,7 +547,7 @@ static void xlvbd_release_gendisk(struct blkfront_info *info) | |||
547 | spin_unlock_irqrestore(&blkif_io_lock, flags); | 547 | spin_unlock_irqrestore(&blkif_io_lock, flags); |
548 | 548 | ||
549 | /* Flush gnttab callback work. Must be done with no locks held. */ | 549 | /* Flush gnttab callback work. Must be done with no locks held. */ |
550 | flush_scheduled_work(); | 550 | flush_work_sync(&info->work); |
551 | 551 | ||
552 | del_gendisk(info->gd); | 552 | del_gendisk(info->gd); |
553 | 553 | ||
@@ -596,7 +596,7 @@ static void blkif_free(struct blkfront_info *info, int suspend) | |||
596 | spin_unlock_irq(&blkif_io_lock); | 596 | spin_unlock_irq(&blkif_io_lock); |
597 | 597 | ||
598 | /* Flush gnttab callback work. Must be done with no locks held. */ | 598 | /* Flush gnttab callback work. Must be done with no locks held. */ |
599 | flush_scheduled_work(); | 599 | flush_work_sync(&info->work); |
600 | 600 | ||
601 | /* Free resources associated with old device channel. */ | 601 | /* Free resources associated with old device channel. */ |
602 | if (info->ring_ref != GRANT_INVALID_REF) { | 602 | if (info->ring_ref != GRANT_INVALID_REF) { |