On Thu, Apr 03, 2014 at 02:43:05PM -0600, Bjorn Helgaas wrote: > Coverity complains about this in drivers/pci/pci.c: > > CID 142811 (#1 of 1): Operands don't affect result (CONSTANT_EXPRESSION_RESULT) > result_independent_of_operands: flags & (2U /* 1 << 1 */) & > (command_bits & 4294967292U /* ~(1 | 2) */) is always 0 regardless of > the values of its operands. This occurs as the logical operand of if. > > 4128 WARN_ON((flags & PCI_VGA_STATE_CHANGE_DECODES) & > (command_bits & ~(PCI_COMMAND_IO|PCI_COMMAND_MEMORY))); > > This is a result of 3448a19da479 "vgaarb: use bridges to control VGA > routing where possible." > > I wonder if that middle "&" was intended to be "&&"? I propose the following patch for this. Unless there's objection, I'll queue this for v3.16. I took the liberty of interpreting your email responses as acks. PCI: Fix incorrect vgaarb conditional in WARN_ON() From: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> 3448a19da479 "vgaarb: use bridges to control VGA routing where possible" added the "flags & PCI_VGA_STATE_CHANGE_DECODES" condition to an existing WARN_ON(), but used bitwise AND (&) instead of logical AND (&&), so the condition is never true. Replace with logical AND. Found by Coverity (CID 142811). Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> Acked-by: Yinghai Lu <yinghai@xxxxxxxxxx> Acked-by: David Airlie <airlied@xxxxxxxxxx> --- drivers/pci/pci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 7325d43bf030..39012831867e 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -4125,7 +4125,7 @@ int pci_set_vga_state(struct pci_dev *dev, bool decode, u16 cmd; int rc; - WARN_ON((flags & PCI_VGA_STATE_CHANGE_DECODES) & (command_bits & ~(PCI_COMMAND_IO|PCI_COMMAND_MEMORY))); + WARN_ON((flags & PCI_VGA_STATE_CHANGE_DECODES) && (command_bits & ~(PCI_COMMAND_IO|PCI_COMMAND_MEMORY))); /* ARCH specific VGA enables */ rc = pci_set_vga_state_arch(dev, decode, command_bits, flags); -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html