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

Re: Advice for implementing MSI-X support on NetBSD Xen 4.11?

  • To: Jaromír Doleček <jaromir.dolecek@xxxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Mon, 20 Jul 2020 09:00:10 +0200
  • Authentication-results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Mon, 20 Jul 2020 07:00:28 +0000
  • Ironport-sdr: /gN7WqqKMJp6DphdnbH3646GayPWugXN2z7lX3DaOu/rqxip3pi0Rt6q+l8nYseSfImDaP042B GLnm/tXMDfhycdNLyKczfOd0N3dyLZVUzJKLqTlnKZWd+Uisbjzv4THhAFvmQWc6eYraS60VLv 5c8YpjAgOkzktrR47dWhYgWPn/DVTTx0McYd3/np8rm0jK73Ox+dlq/Jao8VxoN8CSl6Q/T2kC Yy8IS/tIxEVbKlepzr8TukNUHa7ZWmKOEPs9dAmVM6FDSLnueJxgfsuYnLEB85lZuHmJvjbjGy vKo=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Sun, Jul 19, 2020 at 05:54:28PM +0200, Jaromír Doleček wrote:
> Hello,
> I've implemented support for using MSI under NetBSD Dom0 with 4.11.
> This works well.
> I have some trouble now with getting MSI-X work under Xen.
> PHYSDEVOP_map_pirq hypercall succeeds just as well as for MSI, but
> interrupts don't seem to get delivered.

How are you filling physdev_map_pirq for MSI-X?

You need to set entry_nr and table_base.

> MSI-X interrupts work with NetBSD for the same devices when booted
> natively, without Xen.
> Can you give me some advice on where to start looking to get this
> working? Is there perhaps something special to be done within the PCI
> subsystem to allow Xen to take over?

Are you enabling the capability and unmasking the interrupt in the
MSI-X table?

IIRC the OS also needs to unmask the entry in the MSI-X table in MMIO
space, as done natively.

There are also the Xen debug keys which can be helpful, take a look at
'i' and 'M'.




Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.