Author: kevlo
Date: Wed Jun  6 02:42:30 2012
New Revision: 236649
URL: http://svn.freebsd.org/changeset/base/236649

Log:
  Check the return value of pci_find_cap()

Modified:
  head/sys/dev/ae/if_ae.c

Modified: head/sys/dev/ae/if_ae.c
==============================================================================
--- head/sys/dev/ae/if_ae.c     Wed Jun  6 01:01:12 2012        (r236648)
+++ head/sys/dev/ae/if_ae.c     Wed Jun  6 02:42:30 2012        (r236649)
@@ -1381,12 +1381,13 @@ ae_pm_init(ae_softc_t *sc)
        /*
         * Configure PME.
         */
-       pci_find_cap(sc->dev, PCIY_PMG, &pmc);
-       pmstat = pci_read_config(sc->dev, pmc + PCIR_POWER_STATUS, 2);
-       pmstat &= ~(PCIM_PSTAT_PME | PCIM_PSTAT_PMEENABLE);
-       if ((ifp->if_capenable & IFCAP_WOL) != 0)
-               pmstat |= PCIM_PSTAT_PME | PCIM_PSTAT_PMEENABLE;
-       pci_write_config(sc->dev, pmc + PCIR_POWER_STATUS, pmstat, 2);
+       if (pci_find_cap(dev, PCIY_PMG, &pmc) == 0) {
+               pmstat = pci_read_config(sc->dev, pmc + PCIR_POWER_STATUS, 2);
+               pmstat &= ~(PCIM_PSTAT_PME | PCIM_PSTAT_PMEENABLE);
+               if ((ifp->if_capenable & IFCAP_WOL) != 0)
+                       pmstat |= PCIM_PSTAT_PME | PCIM_PSTAT_PMEENABLE;
+               pci_write_config(sc->dev, pmc + PCIR_POWER_STATUS, pmstat, 2);
+       }
 }
 
 static int
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to