summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjfv <jfv@FreeBSD.org>2010-05-14 22:20:58 +0000
committerjfv <jfv@FreeBSD.org>2010-05-14 22:20:58 +0000
commit02073848fcd5fdf7354e9cbadb34bf5c1c67c896 (patch)
treebdf28ffa69d9362e5140f38087e22cda84b6c061
parentcab5750c5a8588b5abb148df55b07bd20f93013e (diff)
downloadFreeBSD-src-02073848fcd5fdf7354e9cbadb34bf5c1c67c896.zip
FreeBSD-src-02073848fcd5fdf7354e9cbadb34bf5c1c67c896.tar.gz
Missing fix in lem code to limit WOL to MAGIC,
and made code backward compatible to 7.3 with conditionals around the buf_ring_free call.
-rw-r--r--sys/dev/e1000/if_em.c2
-rw-r--r--sys/dev/e1000/if_igb.c2
-rw-r--r--sys/dev/e1000/if_lem.c4
3 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c
index fcebc02..76be240 100644
--- a/sys/dev/e1000/if_em.c
+++ b/sys/dev/e1000/if_em.c
@@ -2951,7 +2951,9 @@ err_tx_desc:
em_dma_free(adapter, &txr->txdma);
free(adapter->rx_rings, M_DEVBUF);
rx_fail:
+#if __FreeBSD_version >= 800000
buf_ring_free(txr->br, M_DEVBUF);
+#endif
free(adapter->tx_rings, M_DEVBUF);
fail:
return (error);
diff --git a/sys/dev/e1000/if_igb.c b/sys/dev/e1000/if_igb.c
index e901bc2..459c18a 100644
--- a/sys/dev/e1000/if_igb.c
+++ b/sys/dev/e1000/if_igb.c
@@ -2969,7 +2969,9 @@ err_tx_desc:
igb_dma_free(adapter, &txr->txdma);
free(adapter->rx_rings, M_DEVBUF);
rx_fail:
+#if __FreeBSD_version >= 800000
buf_ring_free(txr->br, M_DEVBUF);
+#endif
free(adapter->tx_rings, M_DEVBUF);
tx_fail:
free(adapter->queues, M_DEVBUF);
diff --git a/sys/dev/e1000/if_lem.c b/sys/dev/e1000/if_lem.c
index 825fb4e..8df5289 100644
--- a/sys/dev/e1000/if_lem.c
+++ b/sys/dev/e1000/if_lem.c
@@ -2422,10 +2422,10 @@ lem_setup_interface(device_t dev, struct adapter *adapter)
ifp->if_capabilities |= IFCAP_POLLING;
#endif
- /* Enable All WOL methods by default */
+ /* Enable only WOL MAGIC by default */
if (adapter->wol) {
ifp->if_capabilities |= IFCAP_WOL;
- ifp->if_capenable |= IFCAP_WOL;
+ ifp->if_capenable |= IFCAP_WOL_MAGIC;
}
/*
OpenPOWER on IntegriCloud