From: Steven Smith Date: Tue, 30 Jun 2009 11:55:47 +0000 (+0100) Subject: patch CA-8806-blk-dont-reconnect-on-unplug X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=1d0b9305926eef9f2aae2a5780826f13e3d3d34b;p=people%2Fssmith%2Fnc2-2.6.27.git patch CA-8806-blk-dont-reconnect-on-unplug --- diff --git a/drivers/xen/blkback/xenbus.c b/drivers/xen/blkback/xenbus.c index b4ae35c4..a1ac9001 100644 --- a/drivers/xen/blkback/xenbus.c +++ b/drivers/xen/blkback/xenbus.c @@ -525,7 +525,7 @@ static void frontend_changed(struct xenbus_device *dev, /* Ensure we connect even when two watches fire in close successsion and we miss the intermediate value of frontend_state. */ - if (dev->state != XenbusStateConnected) { + if (dev->state != XenbusStateConnected && dev->state != XenbusStateClosing) { err = connect_ring(be); if (err) break; diff --git a/drivers/xen/blktap/xenbus.c b/drivers/xen/blktap/xenbus.c index de7a8adf..1291d557 100644 --- a/drivers/xen/blktap/xenbus.c +++ b/drivers/xen/blktap/xenbus.c @@ -632,7 +632,7 @@ static void tap_frontend_changed(struct xenbus_device *dev, /* Ensure we connect even when two watches fire in close successsion and we miss the intermediate value of frontend_state. */ - if (dev->state != XenbusStateConnected) { + if (dev->state != XenbusStateConnected && dev->state != XenbusStateClosing) { err = connect_ring(be); if (err) break;