From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiaofeng Ling Subject: [PATCH] remove use of get_gendisk in blkfront Date: Fri, 02 Sep 2005 16:28:29 +0800 Message-ID: <43180D2D.8000503@intel.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------010109030300060001000105" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------010109030300060001000105 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit remove use of get_gendisk in blkfront gen_gendisk is no long exported by 2.6 kernel. this patch remove the call of get_gendisk by saving the gd point in blkfront_info in vbd.c so that blkfront can be built as kerenl module. Signed-off-by: Xiaofeng Ling --------------010109030300060001000105 Content-Type: text/x-patch; name="get_gendisk.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="get_gendisk.patch" diff -r 864434653dab linux-2.6-xen-sparse/drivers/xen/blkfront/blkfront.c --- a/linux-2.6-xen-sparse/drivers/xen/blkfront/blkfront.c +++ b/linux-2.6-xen-sparse/drivers/xen/blkfront/blkfront.c @@ -660,6 +651,7 @@ info->vdevice = vdevice; info->connected = BLKIF_STATE_DISCONNECTED; info->mi = NULL; + info->gd = NULL; INIT_WORK(&info->work, blkif_restart_queue, (void *)info); info->shadow_free = 0; diff -r 864434653dab linux-2.6-xen-sparse/drivers/xen/blkfront/block.h --- a/linux-2.6-xen-sparse/drivers/xen/blkfront/block.h +++ b/linux-2.6-xen-sparse/drivers/xen/blkfront/block.h @@ -115,6 +115,7 @@ /* We watch the backend */ struct xenbus_watch watch; dev_t dev; + struct gendisk *gd; int vdevice; blkif_vdev_t handle; int connected; diff -r 864434653dab linux-2.6-xen-sparse/drivers/xen/blkfront/vbd.c --- a/linux-2.6-xen-sparse/drivers/xen/blkfront/vbd.c +++ b/linux-2.6-xen-sparse/drivers/xen/blkfront/vbd.c @@ -266,6 +257,7 @@ gd->flags |= GENHD_FL_CD; add_disk(gd); + info->gd = gd; return 0; @@ -298,23 +290,19 @@ void xlvbd_del(struct blkfront_info *info) { - struct block_device *bd; struct gendisk *gd; int unused; request_queue_t *rq; - bd = bdget(info->dev); - if (bd == NULL) + gd = info->gd; + if (gd == NULL) return; - gd = get_gendisk(info->dev, &unused); rq = gd->queue; - del_gendisk(gd); put_disk(gd); xlbd_put_major_info(info->mi); info->mi = NULL; blk_cleanup_queue(rq); - bdput(bd); -} +} --------------010109030300060001000105 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------------010109030300060001000105--