From 7bc4d6caddc34b35a7736665472365c44173b619 Mon Sep 17 00:00:00 2001 From: "K. Y. Srinivasan" Date: Tue, 10 May 2011 07:54:10 -0700 Subject: [PATCH] --- yaml --- r: 249466 b: refs/heads/master c: 149b11936159b13995d940c21ec622f756dfd66d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/staging/hv/blkvsc_drv.c | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index 0ba3da886cda..c70ec39369eb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f670f824d6a740963d506d6d47a4c1a07b61c630 +refs/heads/master: 149b11936159b13995d940c21ec622f756dfd66d diff --git a/trunk/drivers/staging/hv/blkvsc_drv.c b/trunk/drivers/staging/hv/blkvsc_drv.c index e6a59d753922..0e16b71510d6 100644 --- a/trunk/drivers/staging/hv/blkvsc_drv.c +++ b/trunk/drivers/staging/hv/blkvsc_drv.c @@ -588,15 +588,13 @@ static void blkvsc_shutdown(struct hv_device *dev) spin_unlock_irqrestore(&blkdev->lock, flags); - while (blkdev->num_outstanding_reqs) { - DPRINT_INFO(STORVSC, "waiting for %d requests to complete...", - blkdev->num_outstanding_reqs); - udelay(100); - } - - blkvsc_do_operation(blkdev, DO_FLUSH); + /* + * Now wait for all outgoing I/O to be drained. + */ + storvsc_wait_to_drain((struct storvsc_device *)dev->ext); + } static int blkvsc_release(struct gendisk *disk, fmode_t mode)