Public bug reported: [Impact]
These commit ids are in the xenial kernel branch. Commit 90c9712fbb388077b5e53069cae43f1acbb0102a ("NVMe: Always use MSI/MSI-x interrupts") changed the NVMe driver to always use MSI/MSI-x interrupts. However, later commit 30d6592fce71beabe18460252c3823747c4742f6 ("NVMe: Don't unmap controller registers on reset") as well as commit e9820e415895bdd9cfd21f87e80e3e0a10f131f0 ("UBUNTU: (fix) NVMe: Don't unmap controller registers on reset") accidentally reverted part of the original commit, which reverted the NVMe driver to using GSI interrupts instead of always using MSI/MSI-x interrupts. The original commit was added because GSI interrupts do not always work for NVMe on all systems, while MSI/MSIX interrupts do work. The accidental reversion of the code to use MSI/MSIX causes the NVMe driver to not work on some systems with NVMe drives. [Test Case] On a system with NVMe drive(s) that do not work (because the NVMe driver is using the non-working GSI interrupt, instead of MSI/MSIX interrupt), test the current xenial kernel, and some or all of the NVMe drives will fail to initialize. Then test with the fixed kernel, and all the NVMe drives will initialize. [Regression Potential] If MSI/MSIX interrupts do not work with NVMe drives on some systems, this change would break those systems. Those systems would also be broken by the upstream kernel, however; additionally, without MSI/MSIX support, such NVMe controllers would be significantly slower due to reliance on a single GSI for notification of completion of all I/O. So it's very unlikely there are any systems with NVMe controllers that do not support MSI/MSI-x. [Other Info] ** Affects: linux (Ubuntu) Importance: Undecided Status: Incomplete -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1647887 Title: NVMe driver accidentally reverted to use GSI instead of MSIX Status in linux package in Ubuntu: Incomplete Bug description: [Impact] These commit ids are in the xenial kernel branch. Commit 90c9712fbb388077b5e53069cae43f1acbb0102a ("NVMe: Always use MSI/MSI-x interrupts") changed the NVMe driver to always use MSI/MSI-x interrupts. However, later commit 30d6592fce71beabe18460252c3823747c4742f6 ("NVMe: Don't unmap controller registers on reset") as well as commit e9820e415895bdd9cfd21f87e80e3e0a10f131f0 ("UBUNTU: (fix) NVMe: Don't unmap controller registers on reset") accidentally reverted part of the original commit, which reverted the NVMe driver to using GSI interrupts instead of always using MSI/MSI-x interrupts. The original commit was added because GSI interrupts do not always work for NVMe on all systems, while MSI/MSIX interrupts do work. The accidental reversion of the code to use MSI/MSIX causes the NVMe driver to not work on some systems with NVMe drives. [Test Case] On a system with NVMe drive(s) that do not work (because the NVMe driver is using the non-working GSI interrupt, instead of MSI/MSIX interrupt), test the current xenial kernel, and some or all of the NVMe drives will fail to initialize. Then test with the fixed kernel, and all the NVMe drives will initialize. [Regression Potential] If MSI/MSIX interrupts do not work with NVMe drives on some systems, this change would break those systems. Those systems would also be broken by the upstream kernel, however; additionally, without MSI/MSIX support, such NVMe controllers would be significantly slower due to reliance on a single GSI for notification of completion of all I/O. So it's very unlikely there are any systems with NVMe controllers that do not support MSI/MSI-x. [Other Info] To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1647887/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp