Subject: CVS commit: src/sys/dev/pci
To: None <source-changes@NetBSD.org>
From: Quentin Garnier <cube@netbsd.org>
List: source-changes
Date: 09/24/2007 13:17:54
Module Name:	src
Committed By:	cube
Date:		Mon Sep 24 13:17:54 UTC 2007

Modified Files:
	src/sys/dev/pci: if_nfe.c if_nfevar.h

Log Message:
- If the chip doesn't support jumbo frames, don't use bus_dmamap_load_mbuf
  which expects a properly filled mbuf chain, but bus_dmamap_load for the
  mbuf storage space instead.

- If the chip supports jumbo frames
    + keep track of which RX descriptor uses which jumbo mbuf buffer, so
      that we can rewrite the physaddr field of the descriptor later, as it
      might be partially overwritten by the hw
    + when we're out of jumbo mbufs, and if the packet is small enough,
      copy it into a cluster mbuf

Those changes make my nfe(4) stable in both cases (defining NFE_NO_JUMBO
for the first one).


To generate a diff of this commit:
cvs rdiff -r1.18 -r1.19 src/sys/dev/pci/if_nfe.c
cvs rdiff -r1.2 -r1.3 src/sys/dev/pci/if_nfevar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.