LibBSD | ARM64 MSI/ITS interrupt enable/disable latency (#71)

geng zhu (@zhugengyu2023) gitlab at rtems.org
Mon Dec 15 01:32:34 UTC 2025



geng zhu created an issue: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/issues/71



## Summary
<!--
Please provide as much information as possible such as error messages or attaching logs
-->

Hello all, I am working on merging freebsd-14 pcie driver to rtems-libbsd (6-freebsd-14, https://gitee.com/phytium_embedded/rtems-libbsd/blob/6-freebsd-14/freebsd/sys/dev/pci/pci_host_generic.c), basically for xhci and nvme support,my platform is aarch64,and MSI/MSIx supported by Gicv3 ITS.

My issue is that every MSI/ITS interrupt handling will experience disable/enable procdure, which is time consuming (not like SPI interrupt, ITS interrupt needs to send sync command and flush cache in every disable/enable process), I tried to ignore the disable/enable actions but not working (it seems like pci device interrupt ACK action in irqserver thread keeps preempted by interrupt)

P.S. My gicv3 and gicv3 its driver merge from zephyr and basiclly works in RTEMS now, except above issue

Does any one give me some idea, I'm trying on
1. disable interrupt nesting in rtems kerenl
2. ack pci interrupt in top-half

## Steps to reproduce


<!-- Pre-set options
- milestone
-->

-- 
View it on GitLab: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/issues/71
You're receiving this email because of your account on gitlab.rtems.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20251215/d67f0126/attachment.htm>


More information about the bugs mailing list