WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [PATCH resubmit] xen-blkfront: Don't send closing notif

To: Joe Jin <joe.jin@xxxxxxxxxx>
Subject: [Xen-devel] Re: [PATCH resubmit] xen-blkfront: Don't send closing notification to backend in blkfront_closing()
From: Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>
Date: Thu, 14 Jul 2011 10:12:59 +0100
Cc: Jeremy Fitzhardinge <Jeremy.Fitzhardinge@xxxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, Kurt C Hackel <KURT.HACKEL@xxxxxxxxxx>, Greg Marsden <greg.marsden@xxxxxxxxxx>, "linux-kernel@xxxxxxxxxxxxxxx" <linux-kernel@xxxxxxxxxxxxxxx>, "annie.li@xxxxxxxxxx" <annie.li@xxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Jens Axboe <jaxboe@xxxxxxxxxxxx>, "stable@xxxxxxxxxx" <stable@xxxxxxxxxx>, Daniel Stodden <Daniel.Stodden@xxxxxxxxxx>
Delivery-date: Thu, 14 Jul 2011 02:13:56 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4E1EAEE9.80605@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Citrix Systems, Inc.
References: <4E1CEB34.5090907@xxxxxxxxxx> <1310631209.634.444.camel@xxxxxxxxxxxxxxxxxxxxxx> <4E1EAEE9.80605@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On Thu, 2011-07-14 at 09:55 +0100, Joe Jin wrote:
> On 07/14/11 16:13, Ian Campbell wrote:
> > On Wed, 2011-07-13 at 01:47 +0100, Joe Jin wrote:

> > 
> > I'm wondering if we might not be better off deferring the disconnect on
> > the backend side until the frontend enters XenbusStateClosed instead of
> > doing it in closing.
> 
> Yes this fix from backend side works too, also this looks reasonable than 
> fix in frontend.

I guess there is either a missing "more" or "less" in that sentence ;-)

The nice thing about a backend fix is that you don't need to go round
propagating the fix into distros etc and updating existing deployed
guests (not to mention non-Linux frontends).

I actually thought blkback had something like this already in older
"classic" Xen kernels but it seems like the patch never made it out of
the XCP patch queue :-(. See
http://xenbits.xen.org/hg/XCP/linux-2.6.32.pq.hg/file/tip/CA-7672-blkback-shutdown.patch
(which appears to also incorporate a toolstack directed graceful
shutdown of some sort as well as deferring the device close).

Daniel, do you know of any plans to extricate that stuff from the XCP
patch queue for upstream? Are there any other patches (e.g. incremental
fixes) in that pq which should go along with it?

Ian.

> 
> Konrad, any advice?
> 
> Thanks,
> Joe
> 
> > 
> > Ian
> > 
> >>
> >> Signed-off-by: Joe Jin <joe.jin@xxxxxxxxxx>
> >> Signed-off-by: Annie Li <annie.li@xxxxxxxxxx>
> >> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> >> Cc: Jens Axboe <jaxboe@xxxxxxxxxxxx>
> >> Cc: stable@xxxxxxxxxx
> >>
> >> ---
> >>  xen-blkfront.c |    2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
> >> index b536a9c..f6d8ac2 100644
> >> --- a/drivers/block/xen-blkfront.c
> >> +++ b/drivers/block/xen-blkfront.c
> >> @@ -1088,7 +1088,7 @@ blkfront_closing(struct blkfront_info *info)
> >>    if (bdev->bd_openers) {
> >>            xenbus_dev_error(xbdev, -EBUSY,
> >>                             "Device in use; refusing to close");
> >> -          xenbus_switch_state(xbdev, XenbusStateClosing);
> >> +          xbdev->state = XenbusStateClosing;
> >>    } else {
> >>            xlvbd_release_gendisk(info);
> >>            xenbus_frontend_closed(xbdev);
> > 
> > 
> 
> 



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel