[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] v3.9 - CPU hotplug and microcode earlier loading hits a mutex deadlock (x86_cpu_hotplug_driver_mutex)



On Wed, 2013-05-08 at 12:32 -0400, Konrad Rzeszutek Wilk wrote:
> On Wed, May 08, 2013 at 04:29:49PM +0200, Borislav Petkov wrote:
> > On Wed, May 08, 2013 at 10:03:42AM -0400, Konrad Rzeszutek Wilk wrote:
> > 
> > [ â snip some funky BIOS code ]
> > 
> > > [here it shifts and continues on testing each CPU bit]
> > > 
> > > > Questions over questions...?
> > > 
> > > I probably went overboard with my answers :-)
> > 
> > Konrad, you're killing me! :-) You actually went and looked at the
> > BIOS disassembly voluntarily. You must be insane, I think you should
> > immediately go to the doctor now for a thorough checkup. :-)
> > 
> > I think I know who I can sling BIOS issues now to.
> 
> Great .. :-)
> > 
> > > > Looks like save_mc_for_early would need another, local mutex to fix 
> > > > that.
> > > 
> > > Let me try that. Thanks for the suggestion.
> > 
> > Ok, seriously now: yeah, this was just an idea, it should at least get
> > the nesting out of the way.
> > 
> > About the BIOS deal: you're probably staring at some BIOS out there
> > but is this the way that it is actually going to be implemented on
> > the physical hotplug BIOS? I mean, I've only heard rumors about IVB
> > supporting physical hotplug but do you even have access to such BIOS to
> > verify?
> 
> Unfortunatly not. I am getting an IvyTown box so hopefully that has this
> support. But I thought that Fenghua did since he mentioned in the patch.
> 
> Besides that I think this can also appear on VMWare if one is doing 
> CPU hotplug and on some HP machines - let me CC the relevant people
> extracted from drivers/acpi/processor_driver.c.
> (see  https://lkml.org/lkml/2013/5/7/588 for the thread)

From the stack trace, it looks like a bug in save_mc_for_early().  This
function may not call cpu_hotplug_driver_lock() during CPU online.  I
suppose it intends to protect from CPU offline when microcode is updated
outside of the boot/CPU online context.  If it indeed supports updating
the microcode without using reboot/cpu hotplug, the lock should be held
when such update request is made.

Thanks,
-Toshi


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.