I am working on Solaris 11.3 HBA driver development. We have configured and enabled MSI-x interrupts for PCI device.
At times, while loading our driver we are seeing the OS crash. Looks like this issue is occurring when *intel iommu* is ON.
What does the following error message mean ? Is this fault generated by the interrupt remapping hardware ? How to get rid of this issue ?
intel_iommu0: DEBUG: generated a fault event when translating interrupt request
on index 0x13 for PCI(2, 0, 0), the reason is:
present field in IRTE is clear
NOTICE: SUNW-MSG-ID: SUNOS-8000-0G, TYPE: Error, VER: 1, SEVERITY: Major
Fatal error has occured (0x10) (0x1)
Thanks in advance for your help!
Can you provide the hardware configuration?
I have some feedback from my colleagues:
"Yes it’s about interrupt remapping hardware, which once enabled, every upstream interrupt message is expected to include a valid IRTE index. Not familiar with Solaris. One recommendation is check with Solaris community whether they use the right kernel API to have IRTE configured correctly."
Thanks for your response.
Here is the hardware configuration details:
Server: SuperMicro X9SRi-F
OS: Solaris 11.3
BIOS Version: 3.2a *Intel(R) VT-d enabled*
HBA: PQI Smart Array controller
After reviewing your hardware configuration, my colleague suggests to try your program with Linux to see if you still see the problem there. If you don't see the same symptom then the issue is with Solaris* and that you might want to check Oracle* for support.