At the very least it is setting all kinds of expectations that it
doesn't meet.
In addition the MSI-X spec predates the AHCI device by a long shot.
In general my experience has been that the hardware designers who
really care and have done their homework and can actually take
advantage of multiple irqs have implemented MSI-X.
Assuming AHCI implements the mask bits. In the general case this
is not fixable. I know of several devices that do not implement
the optional mask bits.
Also a case of mismatched expectations. The linux irq API allows
irqs to be bound to different cpus individually. Multi msi does
not meet that contract.
No. It is not obvious to me.
Eric
--