Commit 8138bd95 authored by K. Y. Srinivasan's avatar K. Y. Srinivasan Committed by Greg Kroah-Hartman
Browse files

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: default avatarK. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: default avatarAbhishek Kane <v-abkane@microsoft.com>
Signed-off-by: default avatarHank Janssen <hjanssen@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent e82066b2
Loading
Loading
Loading
Loading
+22 −23
Original line number Diff line number Diff line
@@ -671,9 +671,30 @@ static void blkvsc_shutdown(struct device *device)
	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 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 void blkvsc_request(struct request_queue *queue);
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)
{
	struct block_device_context *blkdev = gd->private_data;