All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] qtest: pci and e1000e/igb msix fixes
@ 2024-12-18  7:42 Nicholas Piggin
  2024-12-18  7:42 ` [PATCH 1/5] qtest/pci: Enforce balanced iomap/unmap Nicholas Piggin
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Nicholas Piggin @ 2024-12-18  7:42 UTC (permalink / raw)
  To: qemu-devel
  Cc: Nicholas Piggin, Michael S . Tsirkin, Marcel Apfelbaum,
	Dmitry Fleytman, Akihiko Odaki, Sriram Yagnaraman, Fabiano Rosas,
	Laurent Vivier, Paolo Bonzini

Hi,

This series is split out from a larger one that added some more
XHCI functionality and tests here. Just wanted to get more focus
on the PCI issues first.

https://lore.kernel.org/qemu-devel/20241212083502.1439033-1-npiggin@gmail.com/T/#t

It is quite reworked after feedback about the incorrect PBA write
implementation. This one solves the e1000e/igb multiple-intrrupt problem
by enabling the msix vector which delivers the interrupt and lowers the
PBA pending bit.

I'm still curious about PCI spec note that masked pending interrupt
must have PBA bit cleared if the interrupt condition in the function
clears, which no device seems to implement... but at least for now,
unmasking and delivering seems to be the reliable way to clear the
interrupt.

Thanks,
Nick


Nicholas Piggin (5):
  qtest/pci: Enforce balanced iomap/unmap
  qtest/libqos/pci: Fix qpci_msix_enable sharing bar0
  qtest/libqos/pci: Do not write to PBA memory
  qtest/e1000e|igb: Clear interrupt-cause bits after irq
  qtest/e1000e|igb: Fix msix to re-trigger interrupts

 tests/qtest/libqos/ahci.h       |   1 +
 tests/qtest/libqos/e1000e.h     |   8 +++
 tests/qtest/libqos/pci.h        |   3 +
 tests/qtest/libqos/virtio-pci.h |   1 +
 tests/qtest/ahci-test.c         |   2 +
 tests/qtest/e1000e-test.c       |  10 ++-
 tests/qtest/igb-test.c          |  10 ++-
 tests/qtest/libqos/ahci.c       |   6 ++
 tests/qtest/libqos/e1000e.c     | 113 +++++++++++++++++++++++++++++++-
 tests/qtest/libqos/pci.c        |  74 ++++++++++++++++++---
 tests/qtest/libqos/virtio-pci.c |   6 +-
 11 files changed, 217 insertions(+), 17 deletions(-)

-- 
2.45.2



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2024-12-21  9:27 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-18  7:42 [PATCH 0/5] qtest: pci and e1000e/igb msix fixes Nicholas Piggin
2024-12-18  7:42 ` [PATCH 1/5] qtest/pci: Enforce balanced iomap/unmap Nicholas Piggin
2024-12-19  9:03   ` Akihiko Odaki
2024-12-18  7:42 ` [PATCH 2/5] qtest/libqos/pci: Fix qpci_msix_enable sharing bar0 Nicholas Piggin
2024-12-18  7:42 ` [PATCH 3/5] qtest/libqos/pci: Do not write to PBA memory Nicholas Piggin
2024-12-18  7:42 ` [PATCH 4/5] qtest/e1000e|igb: Clear interrupt-cause bits after irq Nicholas Piggin
2024-12-19  9:00   ` Akihiko Odaki
2024-12-21  4:15     ` Nicholas Piggin
2024-12-18  7:42 ` [PATCH 5/5] qtest/e1000e|igb: Fix msix to re-trigger interrupts Nicholas Piggin
2024-12-19  8:53   ` Akihiko Odaki
2024-12-21  4:14     ` Nicholas Piggin
2024-12-21  4:26       ` Akihiko Odaki
2024-12-21  8:11         ` Nicholas Piggin
2024-12-21  9:26           ` Akihiko Odaki

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.