From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Horman Subject: [rfc 0/2] allow pass-through devices to share GSI Date: Mon, 09 Mar 2009 20:01:28 +1100 Message-ID: <20090309090128.520709596@vergenet.net> Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Xen-devel Cc: Yuji Shimada , Weidong Han , Keir Fraser List-Id: xen-devel@lists.xenproject.org As discussed recently in the thread "[rfc 00/18] ioemu: use devfn instead of slots as the unit for passthrough", it would be useful if pass-through devices could share GSI. The motivation for this is: * Allow multi-function devices to be passed through as multi-function devices - This implies that the devices may have functions that use INTB, C or D. With the current scheme this would clash with the GSI of INTA on device 13, 14, 15, 21, 22, 23, 29 ,30 and 31. The INTX, device to GSI mapping is described in xen/include/asm-x86/hvm/irq.h as: #define hvm_pci_intx_gsi(dev, intx) \ (((((dev)<<2) + ((dev)>>3) + (intx)) & 31) + 16) And is illustrated in this diagram http://lists.xensource.com/archives/html/xen-devel/2009-02/pngmIO1Sm0VEX.png * Allow more than two pass-through devices. - This will place more contention on the GSI-space, and allocation becomes a lot simpler if GSI sharing is allowed. -- Simon Horman VA Linux Systems Japan K.K., Sydney, Australia Satellite Office H: www.vergenet.net/~horms/ W: www.valinux.co.jp/en