[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201408041645.50566.arnd@arndb.de>
Date: Mon, 4 Aug 2014 16:45:50 +0200
From: Arnd Bergmann <arnd@...db.de>
To: Yijing Wang <wangyijing@...wei.com>
Cc: Jiang Liu <jiang.liu@...ux.intel.com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-arch@...r.kernel.org, Russell King <linux@....linux.org.uk>,
Paul.Mundt@...wei.com, Marc Zyngier <marc.zyngier@....com>,
linux-pci@...r.kernel.org,
"James E.J. Bottomley" <jejb@...isc-linux.org>,
virtualization@...ts.linux-foundation.org,
Xinwei Hu <huxinwei@...wei.com>,
Hanjun Guo <guohanjun@...wei.com>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Wuyun <wuyun.wu@...wei.com>
Subject: Re: [RFC PATCH 00/11] Refactor MSI to support Non-PCI device
On Monday 04 August 2014, Yijing Wang wrote:
> I have another question is some drivers will request more than one
> MSI/MSI-X IRQ, and the driver will use them to process different things.
> Eg. network driver generally uses one of them to process trivial network thins,
> and others to transmit/receive data.
>
> So, in this case, it seems to driver need to touch the IRQ numbers.
>
> wr-linux:~ # cat /proc/interrupts
> CPU0 CPU1 CPU2 .... CPU17 CPU18 CPU19 CPU20 CPU21 CPU22 CPU23
> ......
> 100: 0 0 0 0 0 0 0 0 0 0 IR-PCI-MSI-edge eth0
> 101: 2 0 0 0 0 0 302830488 0 0 0 IR-PCI-MSI-edge eth0-TxRx-0
> 102: 110 0 0 0 0 360675897 0 0 0 0 IR-PCI-MSI-edge eth0-TxRx-1
> 103: 109 0 0 0 0 0 0 0 0 0 IR-PCI-MSI-edge eth0-TxRx-2
> 104: 107 0 0 9678933 0 0 0 0 0 0 IR-PCI-MSI-edge eth0-TxRx-3
> 105: 107 0 0 0 357838258 0 0 0 0 0 IR-PCI-MSI-edge eth0-TxRx-4
> 106: 115 0 0 0 0 0 0 0 0 0 IR-PCI-MSI-edge eth0-TxRx-5
> 107: 114 0 0 0 0 0 0 337866096 0 0 IR-PCI-MSI-edge eth0-TxRx-6
> 108: 373801199 0 0 0 0 0 0 0 0 0 IR-PCI-MSI-edge eth0-TxRx-7
>
I think in this example, you just need to request eight interrupts, and pass a
different data pointer each time, pointing to the napi_struct of each of the
NIC queues. The driver has no need to deal with the IRQ number at all,
and I would be surprised if it cared today.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists