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

[Xen-devel] [PATCH RFC] Per-CPU vector for Xen.



Hi, Keir
   To support more interrupt vectors in Xen for more devices,  especially for 
SR-IOV devices in a large system, we implemented per-cpu vector for Xen like 
Linux does. For SR-IOV devices, since each VF needs several separate vectors 
for interrupt delivery and global ~200 vectors in Xen is insufficient and 
easily run out after installing two or three such devices. Becaue SR-IOV 
devices are becoming popular now,  and from this point of view, we have to 
extend vector resource space to make these devices work. As linux does, we 
implemented per-cpu vector for Xen to extend and scale vector resource to 
nr_cpus x ~200 in a system.   BTW, the core logic of the patches is ported from 
upstream linux and then adapted for Xen.  
 
Patch 0001:  Change nr_irqs to nr_irqs_gsi and make nr_irqs_gsi only used for 
GSI interrupts. 
Patch 0002:  Modify Xen from vector-based interrupt infrastructure to IRQ-based 
one, and the big change is that one irq number is also allocated for MSI 
interrupt source, and the idea is same as Linux's. 
Patch 0003:  Implement per-cpu vector for xen. Most core logic(such as vector 
allocation algorithm, IRQ migration logic...) is ported from upstream Linux.  
About the patch quality, we have done enough testings against upstream, and no 
any regression found after applying this patchset.  
Please help to review.  Comments are very appreicated!  Thanks!
 
Signed-off-by : Xiantao Zhang <xiantao.zhang@xxxxxxxxx>
 
Xiantao

Attachment: 0001-change_nr_irqs_to_nr_irqs_gsi.patch
Description: 0001-change_nr_irqs_to_nr_irqs_gsi.patch

Attachment: 0002-change_to_IRQ_based_interrupt_infrastructure.patch
Description: 0002-change_to_IRQ_based_interrupt_infrastructure.patch

Attachment: 0003-per_cpu_vector_implementation.patch
Description: 0003-per_cpu_vector_implementation.patch

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