Page MenuHomeFreeBSD

powerpc64/powernv: Don't mask MSIs in OPAL
ClosedPublic

Authored by jhibbits on Sep 29 2018, 3:04 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Mar 26, 9:05 AM
Unknown Object (File)
Feb 22 2025, 12:33 PM
Unknown Object (File)
Dec 2 2024, 12:01 PM
Unknown Object (File)
Nov 23 2024, 5:16 PM
Unknown Object (File)
Nov 21 2024, 12:38 PM
Unknown Object (File)
Nov 13 2024, 10:02 AM
Unknown Object (File)
Oct 21 2024, 11:02 PM
Unknown Object (File)
Oct 21 2024, 6:43 AM
Subscribers

Details

Summary

Discussing with Benjamin Herrenschmidt, MSIs, and edge-triggered
interrupts in general, must not be masked in XICS and XIVE, else
subsequent interrupts may be ignored.

Testing locally on my Talos II (single CPU, 18-core POWER9), NVMe now
works with MSI, improving read throughput by ~70% (900MB/s -> 1.67GB/s,
with 64MB block size) over INTx interrupts, and snd_hda(4) now will
actually play music with MSI. Previously, snd_hda(4) would not receive
interrupts, timing out, and declaring the channels dead.

This has also been tested by Kevin Bowling, and others, with great
success. Kevin reported NVMe unusable on his Talos II prior to this
patch.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable