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

RE: [xen-devel][PATCH][VTD] Fix apic pin to interrupt remapping table index



Keir Fraser wrote:
> Ok, we do already support x2apic though, so I don't know what extra
> Dexuan's patch will do? Is x2apic+intremap currently broken?
> 

No break now. I think current x2apic implementation is incomplete. Per spec, 
interrupt remapping is pre-requirement for x2apic. So should enable interrupt 
remapping before x2apic. I think your modified patch is fine for now.  We can 
change it when it's really necessary.

Regards,
Weidong

>  -- Keir
> 
> On 04/06/2009 02:16, "Han, Weidong" <weidong.han@xxxxxxxxx> wrote:
> 
>> Keir,
>> 
>> Yes, your modified patch saves memory. I wanted to do like it. But
>> Dexuan is working on a x2apic patch, which will move interrupt
>> remapping enabling before IOAPIC setup. So I'm wondering ioapic
>> stuffs (nr_ioapic_registers[], nr_ioapics, etc.) aren't ready when
>> enable interrupt remapping after that moving. Dexuan, can you have a
>> look at it? 
>> 
>> Regards,
>> Weidong
>> 
>> Keir Fraser wrote:
>>> Wasteful of memory, so I checked in a modified version as c/s 19707,
>>> which dynamically sizes the array. Please take a look and check
>>> it's okay. 
>>> 
>>> It probably breaks ia64 build due to undefined nr_ioapics and
>>> nr_ioapic_registers[], but I think yours broke ia64 too so we're
>>> even. :-) 
>>> 
>>> Isaku: can you suggest ia64 equivalents for nr_ioapics and
>>> nr_ioapic_registers[]? We can do some ifdef magic at the top of
>>> intremap.c, including defining a nr_ioapic_registers() macro, if
>>> that helps. 
>>> 
>>>  Thanks,
>>>  Keir
>>> 
>>> On 03/06/2009 10:28, "Han, Weidong" <weidong.han@xxxxxxxxx> wrote:
>>> 
>>>> Originally, it calls xmalloc to set index in
>>>> ioapic_rte_to_remap_entry(). When make with debug=y, it may trigger
>>>> spinlock BUG_ON because allocate memory with interrupt disabled.
>>>> 
>>>> This patch doesn't allocate list_head entry in
>>>> ioapic_rte_to_remap_entry(), instead allocate the array in
>>>> enable_intremap() to avoid allocating memory with interrupt
>>>> disabled. 
>>>> 
>>>> 
>>>> Signed-off-by: Weidong Han <weidong.han@xxxxxxxxx>


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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