Staging: hv: Get rid of the forward declaration for blkvsc_release()

Get rid of the forward declaration for blkvsc_release() by moving the code
around.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
Signed-off-by: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
K. Y. Srinivasan 2011-04-22 14:13:29 -07:00 committed by Greg Kroah-Hartman
parent e82066b20b
commit 8138bd95a6
1 changed files with 22 additions and 23 deletions

View File

@ -671,9 +671,30 @@ static void blkvsc_shutdown(struct device *device)
spin_unlock_irqrestore(&blkdev->lock, flags); spin_unlock_irqrestore(&blkdev->lock, flags);
} }
static int blkvsc_release(struct gendisk *disk, fmode_t mode)
{
struct block_device_context *blkdev = disk->private_data;
DPRINT_DBG(BLKVSC_DRV, "- users %d disk %s\n", blkdev->users,
blkdev->gd->disk_name);
mutex_lock(&blkvsc_mutex);
spin_lock(&blkdev->lock);
if (blkdev->users == 1) {
spin_unlock(&blkdev->lock);
blkvsc_do_flush(blkdev);
spin_lock(&blkdev->lock);
}
blkdev->users--;
spin_unlock(&blkdev->lock);
mutex_unlock(&blkvsc_mutex);
return 0;
}
/* Static decl */ /* Static decl */
static int blkvsc_probe(struct device *dev); static int blkvsc_probe(struct device *dev);
static int blkvsc_release(struct gendisk *disk, fmode_t mode);
static int blkvsc_revalidate_disk(struct gendisk *gd); static int blkvsc_revalidate_disk(struct gendisk *gd);
static void blkvsc_request(struct request_queue *queue); static void blkvsc_request(struct request_queue *queue);
static void blkvsc_request_completion(struct hv_storvsc_request *request); static void blkvsc_request_completion(struct hv_storvsc_request *request);
@ -1483,28 +1504,6 @@ static void blkvsc_request(struct request_queue *queue)
} }
} }
static int blkvsc_release(struct gendisk *disk, fmode_t mode)
{
struct block_device_context *blkdev = disk->private_data;
DPRINT_DBG(BLKVSC_DRV, "- users %d disk %s\n", blkdev->users,
blkdev->gd->disk_name);
mutex_lock(&blkvsc_mutex);
spin_lock(&blkdev->lock);
if (blkdev->users == 1) {
spin_unlock(&blkdev->lock);
blkvsc_do_flush(blkdev);
spin_lock(&blkdev->lock);
}
blkdev->users--;
spin_unlock(&blkdev->lock);
mutex_unlock(&blkvsc_mutex);
return 0;
}
static int blkvsc_revalidate_disk(struct gendisk *gd) static int blkvsc_revalidate_disk(struct gendisk *gd)
{ {
struct block_device_context *blkdev = gd->private_data; struct block_device_context *blkdev = gd->private_data;