From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932202Ab1C1QuW (ORCPT ); Mon, 28 Mar 2011 12:50:22 -0400 Received: from p3plsmtps2ded03.prod.phx3.secureserver.net ([208.109.80.60]:60571 "HELO p3plsmtps2ded03-02.prod.phx3.secureserver.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1754802Ab1C1QuL (ORCPT ); Mon, 28 Mar 2011 12:50:11 -0400 From: "K. Y. Srinivasan" To: gregkh@suse.de, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, virtualization@lists.osdl.org Cc: "K. Y. Srinivasan" , Haiyang Zhang , Abhishek Kane , Hank Janssen Subject: [PATCH 03/22] Staging: hv: Get rid of the forward declaration of blkvsc_open() Date: Mon, 28 Mar 2011 10:00:34 -0700 Message-Id: <1301331653-26265-3-git-send-email-kys@microsoft.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1301331653-26265-1-git-send-email-kys@microsoft.com> References: <1301331615-26226-1-git-send-email-kys@microsoft.com> <1301331653-26265-1-git-send-email-kys@microsoft.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Get rid of the forward declaration of blkvsc_open() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen --- drivers/staging/hv/blkvsc_drv.c | 49 +++++++++++++++++++-------------------- 1 files changed, 24 insertions(+), 25 deletions(-) diff --git a/drivers/staging/hv/blkvsc_drv.c b/drivers/staging/hv/blkvsc_drv.c index 4b97348..cd3a019 100644 --- a/drivers/staging/hv/blkvsc_drv.c +++ b/drivers/staging/hv/blkvsc_drv.c @@ -106,6 +106,7 @@ struct block_device_context { int users; }; +static DEFINE_MUTEX(blkvsc_mutex); static const char *g_blk_driver_name = "blkvsc"; @@ -248,13 +249,34 @@ static int blkvsc_media_changed(struct gendisk *gd) return 1; } +static int blkvsc_open(struct block_device *bdev, fmode_t mode) +{ + struct block_device_context *blkdev = bdev->bd_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 && blkdev->device_type == DVD_TYPE) { + spin_unlock(&blkdev->lock); + check_disk_change(bdev); + spin_lock(&blkdev->lock); + } + + blkdev->users++; + + spin_unlock(&blkdev->lock); + mutex_unlock(&blkvsc_mutex); + return 0; +} + /* Static decl */ -static DEFINE_MUTEX(blkvsc_mutex); static int blkvsc_probe(struct device *dev); static int blkvsc_remove(struct device *device); static void blkvsc_shutdown(struct device *device); -static int blkvsc_open(struct block_device *bdev, fmode_t mode); static int blkvsc_release(struct gendisk *disk, fmode_t mode); static int blkvsc_revalidate_disk(struct gendisk *gd); static int blkvsc_getgeo(struct block_device *bd, struct hd_geometry *hg); @@ -1364,29 +1386,6 @@ static void blkvsc_request(struct request_queue *queue) } } -static int blkvsc_open(struct block_device *bdev, fmode_t mode) -{ - struct block_device_context *blkdev = bdev->bd_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 && blkdev->device_type == DVD_TYPE) { - spin_unlock(&blkdev->lock); - check_disk_change(bdev); - spin_lock(&blkdev->lock); - } - - blkdev->users++; - - spin_unlock(&blkdev->lock); - mutex_unlock(&blkvsc_mutex); - return 0; -} - static int blkvsc_release(struct gendisk *disk, fmode_t mode) { struct block_device_context *blkdev = disk->private_data; -- 1.7.4.1