No announcement yet.

Linux 6.2 Brings A Big Rework To The MSI Subsystem

  • Filter
  • Time
  • Show
Clear All
new posts

  • Linux 6.2 Brings A Big Rework To The MSI Subsystem

    Phoronix: Linux 6.2 Brings A Big Rework To The MSI Subsystem

    The IRQ pull request that was merged early in the Linux 6.2 cycle has a big rework to the Message Signaled Interrupts (MSI) subsystem...

  • #2
    Damn, 6.2 is gonna be really great.


    • #3
      That looks like some potential performance gains.


      • #4
        The IDXD driver in reference is for the Intel Data Accelerator Driver as part of Intel Scalable IOV.
        I just read about this yesterday, sounds cool


        • #5
          I doubt it will give performance gains. Maybe even the opposite. And it might introduce some new bugs in the existing drivers who were relying on the earlier concepts.

          But(!), it also sounds like a really great rework that will enable much cleaner and better future hardware support, more robust PCI passthrough and other things. I really welcome such reworks! Tho I have little knowledge about the MSI subsystem and might be completely off with my judgement. xD


          • #6
            The Performance gain was switching from IRQ to MSI the cpu was no longer stalled by a IRQ but this rework will not gain performance but better utility for pci passtrough and maybe enable sr-iov and stuff.


            • #7
              There is quite a bit of stability gains on the table, that much is clear.

              What isn't 100% clear to me at least from reading Michael's summary of the discussion is if the new implementation requires rewrites for all users of the old interface or if the rework being discussed is only for the thing itself then for where kernel devs identified optimization opportunities or caught the driver doing nasty unsupported stuff that might break now that the interface behaves more strictly as specified... I think it's the later, which means it'll only be a real immediate problem for non-mainlined drivers with shoddy implementation, not for the mainlined stuff nor the non-mainlined stuff that's well done... though I expect shoddy to be a common adjective in non-mainlined drivers, so those might need to stay trapped in older kernels until the driver devs fix it.

              The good news is that the new implementation seems to make it much easier for drivers to properly implement what they previously did in a shoddy hackish manner before, so I expect to quickly see a net-gain there.
              Last edited by marlock; 25 December 2022, 05:47 PM.


              • #8
                Looks like to me from what I've read is that this benefits big data center and cloud infrastructure more than anything else. It's the needed prep work for systems that will have 100's of cores per socket spinning up more VMs than is possible now and for the ability for these composable systems to speak with accelerators (GPUs, FPGAs, DSPs, etc) more effectively, efficiently and at greater scale. Not to mention this being prep work to also better utilize the new CXL memory scheme. It also makes sense they mention pulling in ARM into this work as ARM is increasingly found in these huge data centers and cloud infrastructures.

                I see little in the way of this being much help for the home desktop user but improving core architecture can't help but reap benefits for all even in a small way. Whenever you find something wrong or inadequate it should be fixed. Perhaps.....and this is a long shot speculation....but perhaps down the road something that already uses VMs, containers and accelerators, like a Chromebook, could see some benefit. What that might be, such as improved performance and/or stability, is beyond my knowledge.