Hi Klaus, On 12/21/20 7:17 AM, Klaus Jensen wrote: > On Dec 21 15:11, Philippe Mathieu-Daudé wrote: >> Cc'ing NVMe emulation maintainers. >> >> On 12/21/20 6:12 AM, Guenter Roeck wrote: >>> Hi all, >>> >>> since qemu v5.1, nvme support has been dropped from several architectures. >>> Well, it was not exactly dropped, but disabled. >>> >>> On those architectures, trying to boot from an nvme drive now results >>> in the following or a similar error message. >>> >>> qemu-system-alpha: -device nvme,serial=foo,drive=d0: MSI-X is not supported >>> by interrupt controller >>> >>> This is the result of the following two commits. >>> >>> fbf2e5375e ("hw/block/nvme: Verify msix_vector_use() returned value") >>> 1c0c2163aa ("hw/block/nvme: verify msix_init_exclusive_bar() return value") >>> >>> Affected architectures are alpha, parisc, ppc, sh, and sparc, and every >>> other >>> architecture/platform where the interrupt controller does not support MSI-X. >>> After reverting above patches, I can boot from nvme again. >>> >>> This does not really matter for me - I run my own versions of qemu anyway, >>> and don't mind carrying reverts if I have to. However, for my education, >>> I would like to understand why nvme support was disabled, especially since >>> it seemed to work for me just fine for years. Can someone please explain ? >>> >>> Thanks, >>> Guenter >>> >> > > Hi Guenter, > > Thanks for reporting this. My apologies - this is an unintended > regression. I'll get a revert staged. > > I'll of course also look into why this was not picked up doing testing. > There is an nvme QTest that should have picked this up, but it obviously > was not run for these architectures. >
Ah, that explains a lot. Just a thought: instead of reverting the patches, it might possibly make sense to handle lack of MSI-X support explicitly. Thanks, Guenter
signature.asc
Description: OpenPGP digital signature