[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [linux-2.6.18-xen] xenbus: fix xenbus_transaction_start() hang caused by double xenbus_transaction_end()
# HG changeset patch # User Laszlo Ersek <lersek@xxxxxxxxxx> # Date 1305548805 -3600 # Node ID aa2a7493b2027936d4b6224a324f8a7ae65a8e95 # Parent c896d26c6b7c70bc82e353e7d02579fdd26af2f6 xenbus: fix xenbus_transaction_start() hang caused by double xenbus_transaction_end() vbd_resize() up_read()'s xs_state.suspend_mutex twice in a row via double xenbus_transaction_end() calls. The next down_read() in xenbus_transaction_start() (at eg. the next resize attempt) hangs. See RHBZ#618317. Signed-off-by: Laszlo Ersek <lersek@xxxxxxxxxx> Acked-by: Jan Beulich <jbeulich@xxxxxxxxxx> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- diff -r c896d26c6b7c -r aa2a7493b202 drivers/xen/blkback/vbd.c --- a/drivers/xen/blkback/vbd.c Mon May 09 10:02:19 2011 +0100 +++ b/drivers/xen/blkback/vbd.c Mon May 16 13:26:45 2011 +0100 @@ -156,6 +156,7 @@ goto again; if (err) printk(KERN_WARNING "Error ending transaction"); + return; abort: xenbus_transaction_end(xbt, 1); } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |