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

Re: [Xen-devel] Linux 4.8-rc8 with Xen for-linus-4.9 branch: dom0 crashes on boot



On 10/02/2016 12:57 PM, Sander Eikelenboom wrote:
> On 2016-10-02 18:53, Boris Ostrovsky wrote:
>> On 10/02/2016 08:50 AM, Sander Eikelenboom wrote:
>>>
>>>>> Sure thing:
>>>>> addr2line -e vmlinux-4.8.0-rc8-20161002-linus-xennext+
>>>>> ffffffff8101fdb9
>>>>> /usr/src/new/linux-linus/arch/x86/xen/irq.c:34
>>>>>
>>>>> asmlinkage __visible unsigned long xen_save_fl(void)
>>>>> {
>>>>>         struct vcpu_info *vcpu;
>>>>>         unsigned long flags;
>>>>>
>>>>>         vcpu = this_cpu_read(xen_vcpu);
>>>>>
>>>>>         /* flag has opposite sense of mask */
>>>>>         flags = !vcpu->evtchn_upcall_mask;   <== WHICH IS HERE
>>>>>
>>>>>         /* convert to IF type flag
>>>>>            -0 -> 0x00000000
>>>>>            -1 -> 0xffffffff
>>>>>         */
>>>>>         return (-flags) & X86_EFLAGS_IF;
>>>>> }
>>>>
>>>>
>>>> Can you post your .config file?
>>>>
>>>> Our tests seem to have run fine yesterday with those branches, until
>>>> apparently electrical problem shut down the whole test farm this
>>>> morning.
>>>>
>>>> -boris
>>>
>>> Sure, it's attached.
>>
>>
>> I can reproduce this and will send a patch soon.
>>
>> -boris
>
> Hi Boris,
>
> Thx, just wondering though what the specific difference in .config was :)


It's CONFIG_DEBUG_MUTEXES.

When it is defined, spin_lock_mutex() does local_irq_save() which ends
up calling xen_save_fl(). And the latter requires per_cpu(xen_vcpu,
cpu<=0>) to be set, which it is not.

Until now we haven't called mutex_lock() yet at this point but now that
we are registering with hotplug infrastructure we do.


-boris





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

 


Rackspace

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