tech-kern archive

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

Re: RFC: MSI/MSI-X implementation



Hi,

(2014/11/14 6:31), Joerg Sonnenberger wrote:
On Thu, Nov 13, 2014 at 01:59:09PM -0600, David Young wrote:
On Thu, Nov 13, 2014 at 12:41:38PM +0900, Kengo NAKAHARA wrote:
(2014/11/13 11:54), David Young wrote:
On Fri, Nov 07, 2014 at 04:41:55PM +0900, Kengo NAKAHARA wrote:
Could you comment the specification and implementation?

The user should not be on the hook to set processor affinity for the
interrupts.  That is more properly the responsibility of the designer
and OS.

I wrote unclear explanation..., so please let me redescribe.

This MSI/MSI-X API *design* is independent from processor affinity.
The device dirvers can use MSI/MSI-X and processor affinity
independently of each other. In other words, legacy interrupts and
INTx interrupts can use processor affinity still. Furthermore,
MSI/MSI-X may or may not use processor affinity.

MSI/MSI-X is not half as useful as it ought to be if a driver's author
cannot spread interrupt workload across the available CPUs.  If you
don't mind, please share your processor affinity proposal and show how
it works with interrupts.

Nevertheless, I would prefer to see it getting into the tree first.
While manual load balancing by the administrator is often suboptimal,
there are situations where it is certainly desirable. As such, I believe
that the logic for higher intelligence in the default can be added as a
second step.

Yes. The logic for higher intelligence has been discussed in this thread.
    http://mail-index.netbsd.org/tech-kern/2014/07/25/msg017405.html
However, I think the solution to resolve various situations has not been
found yet.

Thanks,

--
//////////////////////////////////////////////////////////////////////
Internet Initiative Japan Inc.

Device Engineering Section,
Core Product Development Department,
Product Division,
Technology Unit

Kengo NAKAHARA <k-nakahara%iij.ad.jp@localhost>


Home | Main Index | Thread Index | Old Index