The RTAS IRQ fixup code relies on a less-than-clear edge condition for verifying a given device is not using MSI or MSI-X. Make that more clear with a comment.
Signed-off-by: Nishanth Aravamudan <n...@us.ibm.com> Cc: Milton Miller <milt...@bga.com> Cc: Benjamin Herrenschmidt <b...@kernel.crashing.org> Cc: Paul Mackerras <pau...@samba.org> --- arch/powerpc/platforms/pseries/msi.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/arch/powerpc/platforms/pseries/msi.c b/arch/powerpc/platforms/pseries/msi.c index 9434576..8c6dbbc 100644 --- a/arch/powerpc/platforms/pseries/msi.c +++ b/arch/powerpc/platforms/pseries/msi.c @@ -455,7 +455,12 @@ static void rtas_msi_pci_irq_fixup(struct pci_dev *pdev) return; } - /* No MSI -> MSIs can't have been assigned by fw, leave LSI */ + /* + * No MSI -> MSIs can't have been assigned by fw, leave LSI + * The calls below can only provide one of two responses: + * < 0: if the device doesn't request MSI or MSI-X + * 0: if the device requests at least 1 MSI/MSI-X vector + */ if (check_req_msi(pdev, 1) && check_req_msix(pdev, 1)) { dev_dbg(&pdev->dev, "rtas_msi: no req#msi/x, nothing to do.\n"); return; -- 1.7.1 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev