summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/dev/vr/if_vr.c13
-rw-r--r--sys/pci/if_vr.c13
2 files changed, 22 insertions, 4 deletions
diff --git a/sys/dev/vr/if_vr.c b/sys/dev/vr/if_vr.c
index 07890f8..608d43b 100644
--- a/sys/dev/vr/if_vr.c
+++ b/sys/dev/vr/if_vr.c
@@ -29,7 +29,7 @@
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: if_vr.c,v 1.3 1998/12/07 21:58:47 archie Exp $
+ * $Id: if_vr.c,v 1.4 1998/12/14 06:32:56 dillon Exp $
*/
/*
@@ -97,7 +97,7 @@
#ifndef lint
static const char rcsid[] =
- "$Id: if_vr.c,v 1.3 1998/12/07 21:58:47 archie Exp $";
+ "$Id: if_vr.c,v 1.4 1998/12/14 06:32:56 dillon Exp $";
#endif
/*
@@ -1286,6 +1286,15 @@ static void vr_rxeof(sc)
total_len = VR_RXBYTES(cur_rx->vr_ptr->vr_status);
/*
+ * XXX The VIA Rhine chip includes the CRC with every
+ * received frame, and there's no way to turn this
+ * behavior off (at least, I can't find anything in
+ * the manual that explains how to do it) so we have
+ * to trim off the CRC manually.
+ */
+ total_len -= ETHER_CRC_LEN;
+
+ /*
* Try to conjure up a new mbuf cluster. If that
* fails, it means we have an out of memory condition and
* should leave the buffer in place and continue. This will
diff --git a/sys/pci/if_vr.c b/sys/pci/if_vr.c
index 07890f8..608d43b 100644
--- a/sys/pci/if_vr.c
+++ b/sys/pci/if_vr.c
@@ -29,7 +29,7 @@
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: if_vr.c,v 1.3 1998/12/07 21:58:47 archie Exp $
+ * $Id: if_vr.c,v 1.4 1998/12/14 06:32:56 dillon Exp $
*/
/*
@@ -97,7 +97,7 @@
#ifndef lint
static const char rcsid[] =
- "$Id: if_vr.c,v 1.3 1998/12/07 21:58:47 archie Exp $";
+ "$Id: if_vr.c,v 1.4 1998/12/14 06:32:56 dillon Exp $";
#endif
/*
@@ -1286,6 +1286,15 @@ static void vr_rxeof(sc)
total_len = VR_RXBYTES(cur_rx->vr_ptr->vr_status);
/*
+ * XXX The VIA Rhine chip includes the CRC with every
+ * received frame, and there's no way to turn this
+ * behavior off (at least, I can't find anything in
+ * the manual that explains how to do it) so we have
+ * to trim off the CRC manually.
+ */
+ total_len -= ETHER_CRC_LEN;
+
+ /*
* Try to conjure up a new mbuf cluster. If that
* fails, it means we have an out of memory condition and
* should leave the buffer in place and continue. This will
OpenPOWER on IntegriCloud