On Fri, Jan 03, 2020 at 05:12:38PM +0800, Jason Wang wrote:
On 2020/1/3 äå2:14, Liu, Jiang wrote:I think a way for the device to limit # of vectors in use by driver is
Maybe, but I still prefer to implement it if it is not too complex. Let'sOk, I get you now.Thanks for the info:)
But still, having fixed number of MSIs is less flexible. E.g:
- for x86, processor can only deal with about 250 interrupt vectors.
- driver may choose to share MSI vectors [1] (which is not merged but we will for sure need it)
X86 systems roughly have NCPU * 200 vectors available for device interrupts.
The proposed patch tries to map multiple event sources to an interrupt vector, to avoid running out of x86 CPU vectors.
Many virtio mmio devices may have several or tens of event sources, and itâs rare to have hundreds of event sources.
So could we treat the dynamic mapping between event sources and interrupt vectors as an advanced optional feature?
see Michael's opinion on this.
Thanks
useful. But sharing of vectors doesn't really need any special
registers, just program the same vector for multiple Qs/interrupts.