PCI/MSI: Deal with devices lying about their MSI mask capability
authorMarc Zyngier <maz@kernel.org>
Thu, 4 Nov 2021 18:01:29 +0000 (18:01 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Nov 2021 12:49:09 +0000 (13:49 +0100)
commit18c55aed17b2d9b34c8b4946bc7eeb0a51ce8d10
tree80099f337314373cab30cc04b8209930ed0b4bcd
parentf64af173573104dd896a75b1b9116031b35bbb95
PCI/MSI: Deal with devices lying about their MSI mask capability

commit 2226667a145db2e1f314d7f57fd644fe69863ab9 upstream.

It appears that some devices are lying about their mask capability,
pretending that they don't have it, while they actually do.
The net result is that now that we don't enable MSIs on such
endpoint.

Add a new per-device flag to deal with this. Further patches will
make use of it, sadly.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20211104180130.3825416-2-maz@kernel.org
Cc: Bjorn Helgaas <helgaas@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/pci/msi.c
include/linux/pci.h