Message ID | 20130531075840.GA28370@debian |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
From: Dan Carpenter <dan.carpenter@oracle.com> Date: Fri, 31 May 2013 13:07:19 +0300 > PCI_D0 is zero so the original test is never true. > > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > I don't have the hardware to test this, and I'm not positive on it. > Buyer beware! Someone please review/test this patch, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
> PCI_D0 is zero so the original test is never true. > > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > I don't have the hardware to test this, and I'm not positive on it. > Buyer beware! > > diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c > b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c > index 263950c..a9a1609 100644 > --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c > +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c > @@ -1391,7 +1391,7 @@ static bool bnx2x_is_nvm_accessible(struct bnx2x > *bp) > rc = pci_read_config_word(bp->pdev, > bp->pm_cap + PCI_PM_CTRL, &pm); > > - if ((rc && !netif_running(dev)) || (!rc && ((pm & PCI_D0) != PCI_D0))) > + if ((rc && !netif_running(dev)) || (!rc && pm != PCI_D0)) > return false; Hi Dan, Thanks for the catch, but I think your fix might be incomplete; It should probably be + if ((rc && !netif_running(dev)) || (!rc && ((pm & PCI_PM_CTRL_STATE_MASK) != PCI_D0))) Otherwise the condition will fail if other bits are set in the PM control register. Thanks, Yuval -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c index 263950c..a9a1609 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c @@ -1391,7 +1391,7 @@ static bool bnx2x_is_nvm_accessible(struct bnx2x *bp) rc = pci_read_config_word(bp->pdev, bp->pm_cap + PCI_PM_CTRL, &pm); - if ((rc && !netif_running(dev)) || (!rc && ((pm & PCI_D0) != PCI_D0))) + if ((rc && !netif_running(dev)) || (!rc && pm != PCI_D0)) return false; return true;
PCI_D0 is zero so the original test is never true. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> --- I don't have the hardware to test this, and I'm not positive on it. Buyer beware! -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html