All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/3] ARM: ITS: implement TODO and fix issues with cache
@ 2023-09-19 11:28 Volodymyr Babchuk
  2023-09-19 11:28 ` [PATCH v1 1/3] ARM: GICv3 ITS: issue INVALL command after mapping host events Volodymyr Babchuk
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Volodymyr Babchuk @ 2023-09-19 11:28 UTC (permalink / raw)
  To: xen-devel@lists.xenproject.org
  Cc: Stewart Hildebrand, Volodymyr Babchuk, Stefano Stabellini,
	Julien Grall, Bertrand Marquis, Volodymyr Babchuk

Hello,

There were a couple of issues with GICv3 ITS implementation in
Xen. From user perspective it looks like no interrupts are
delivered. I observed those issues when experimented with SR-IOV on
Renesas S4 board. In my case it wasn't a 100% reproducible issue, so
it took some time and couple of tries to fix it. I wasn't sure if my
fix addressed some hardware quirks of S4 board or it was a generic
solution, so I postponed publishing of it.

Later, Stewart Hildebrand had very simmilar issues with his setup. I
shared those 3 patches with him and they fixed his issue as well. So,
I believe we need those changes in Xen mainline.

Second patch ("ARM: GICv3 ITS: do not invalidate memory while sending
a command") is not strictly required, as it just provides a small
optimization, but I believe it would be nice to have it in the code
base.

Volodymyr Babchuk (3):
  ARM: GICv3 ITS: issue INVALL command after mapping host events
  ARM: GICv3 ITS: do not invalidate memory while sending a command
  ARM: GICv3 ITS: flush all buffers, not just command queue

 xen/arch/arm/gic-v3-its.c             | 27 ++++++++++++++++++++++-----
 xen/arch/arm/include/asm/gic_v3_its.h |  2 +-
 2 files changed, 23 insertions(+), 6 deletions(-)

-- 
2.42.0


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

end of thread, other threads:[~2023-09-22 22:03 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-19 11:28 [PATCH v1 0/3] ARM: ITS: implement TODO and fix issues with cache Volodymyr Babchuk
2023-09-19 11:28 ` [PATCH v1 1/3] ARM: GICv3 ITS: issue INVALL command after mapping host events Volodymyr Babchuk
2023-09-19 12:22   ` Julien Grall
2023-09-19 11:28 ` [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while sending a command Volodymyr Babchuk
2023-09-19 13:02   ` Julien Grall
2023-09-19 14:36     ` Volodymyr Babchuk
2023-09-19 15:19       ` Julien Grall
2023-09-22  0:22         ` Volodymyr Babchuk
2023-09-22 10:31           ` Marc Zyngier
2023-09-22 22:02             ` Volodymyr Babchuk
2023-09-19 11:28 ` [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just command queue Volodymyr Babchuk
2023-09-19 13:10   ` Julien Grall
2023-09-19 13:14     ` Julien Grall
2023-09-19 19:17       ` Stewart Hildebrand
2023-09-19 19:07 ` [PATCH v1 0/3] ARM: ITS: implement TODO and fix issues with cache Stewart Hildebrand

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.