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

Re: [Xen-devel] dom0 kernel - irq nobody cared ... the continuing saga ..



>>> On 10.02.15 at 14:07, <linux@xxxxxxxxxxxxxx> wrote:
> Tuesday, February 10, 2015, 10:35:36 AM, you wrote:
>>>>> On 10.02.15 at 10:19, <linux@xxxxxxxxxxxxxx> wrote:
>>>> I would have thought that xen-pciback would install an interrupt
>>>> handler here too when a device using IRQ 18 gets handed to a
>>>> guest. May there be something broken in xen_pcibk_control_isr()?
>>> 
>>> It seems to only do that for PV guests, not for HVM.
> 
>> Interesting; no idea why that would be.
> 
> Coming back to this part .. with some additional debugging on HVM guest 
> start i 
> get:
> [   84.362097] pciback 0000:02:00.0: resetting (FLR, D3,  bus) the device
> [   84.422884] pciback 0000:02:00.0: xen_pcibk_reset_device: me here
> [   84.452639] pciback 0000:02:00.0: xen_pcibk_control_isr: return !enable && 
> !dev_data->isr_on enable:0 dev_data->isr_on:0
> [   85.636725] pciback 0000:00:19.0: resetting (FLR, D3,  ) the device
> [   85.774845] pciback 0000:00:19.0: xen_pcibk_reset_device: me here
> [   85.810857] pciback 0000:00:19.0: xen_pcibk_control_isr: return !enable && 
> !dev_data->isr_on enable:0 dev_data->isr_on:0
> [   85.865075] xen_pciback: vpci: 0000:02:00.0: assign to virtual slot 0
> [   85.886926] pciback 0000:02:00.0: registering for 1
> [   85.907936] xen_pciback: vpci: 0000:00:19.0: assign to virtual slot 1
> [   85.929490] pciback 0000:00:19.0: registering for 1
>  
> So it bails out on:
>         /* Asked to disable, but ISR isn't runnig */
>         if (!enable && !dev_data->isr_on){
>                 dev_warn(&dev->dev, "%s: return !enable && !dev_data->isr_on 
> enable:%d dev_data->isr_on:%d\n", __func__, enable, dev_data->isr_on ? 1 : 0);
>                 return;
>         }

I don't really know how this code is supposed to work (we don't use
it in our kernels), but it seems the more interesting question is what
happens when xen_pcibk_do_op() calls this function. I also note there
is a sysfs interface to control some aspects of this, but I can't see how
that would work when it only sets ->isr_on but doesn't install the IRQ
handler if it isn't already installed.

Jan


_______________________________________________
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®.