[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 11/11] xen/hvm kdump: reset PV devices in crash kernel
On Fri, Jul 29, Stefano Stabellini wrote: > On Thu, 28 Jul 2011, Olaf Hering wrote: > > (this is actually a forward port of rev 1079 from 2.6.18.hg, untested > > because > > kdump just hangs before (or while) entering the crash kernel in 3.0) > > > > After triggering a crash dump in a HVM guest, the PV backend drivers > > will remain in connected state. When the kdump kernel starts the PV > > drivers will skip such devices. As a result, no root device is found and > > the vmcore cant be saved. > > > > With this change all frontend devices with state XenbusStateConnected > > will be reset by changing the state file to Closing/Closed/Initializing. > > This will trigger a disconnect in the backend drivers. Now the frontend > > drivers will find the backend drivers in state Initwait and can connect. > > > > Signed-off-by: Olaf Hering <olaf@xxxxxxxxx> > > > > --- > > drivers/xen/xenbus/xenbus_comms.c | 4 - > > drivers/xen/xenbus/xenbus_probe_frontend.c | 97 > > +++++++++++++++++++++++++++++ > > 2 files changed, 100 insertions(+), 1 deletion(-) > > > > Index: linux-3.0/drivers/xen/xenbus/xenbus_comms.c > > =================================================================== > > --- linux-3.0.orig/drivers/xen/xenbus/xenbus_comms.c > > +++ linux-3.0/drivers/xen/xenbus/xenbus_comms.c > > @@ -212,7 +212,9 @@ int xb_init_comms(void) > > printk(KERN_WARNING "XENBUS response ring is not quiescent " > > "(%08x:%08x): fixing up\n", > > intf->rsp_cons, intf->rsp_prod); > > - intf->rsp_cons = intf->rsp_prod; > > + /* breaks kdump */ > > + if (!reset_devices) > > + intf->rsp_cons = intf->rsp_prod; > > } > > Where is reset_devices coming from? > I hope is set only on a kexec reboot. This is for a kdump boot, its added as additional kernel cmdline option for the kdump kernel. > Considering that all the other patches in this series follow the > opposite strategy, that is closing stuff on shutdown, why are you trying > to close xenbus connections on boot here? > At this point I would rather be coherent and simply switch to > XenbusStateClosing or XenbusStateClosed in the shutdown path if > kexec_is_loaded. To allow the kdump kernel to store the /proc/vmcore file somewhere, it has to get either storage or network access. But the kdump kernel finds all devices in the Connected state, because the to-be-debugged kernel just crashed. So it has to reset the connection to the backend. Olaf _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |