diff options
author | yongari <yongari@FreeBSD.org> | 2014-03-31 01:54:59 +0000 |
---|---|---|
committer | yongari <yongari@FreeBSD.org> | 2014-03-31 01:54:59 +0000 |
commit | e1b5ce307a401cee03e8762e864442953d82c590 (patch) | |
tree | 74de747b83372a8f57da81c4b04485edfa799ecc /sys/dev/sge | |
parent | eebc91c3f07da2be029d067225ea5126070dce16 (diff) | |
download | FreeBSD-src-e1b5ce307a401cee03e8762e864442953d82c590.zip FreeBSD-src-e1b5ce307a401cee03e8762e864442953d82c590.tar.gz |
Increase the number of TX DMA segments from 32 to 35. It turned
out 32 is not enough to support a full sized TSO packet.
While I'm here fix a long standing bug introduced in r169632 in
bce(4) where it didn't include L2 header length of TSO packet in
the maximum DMA segment size calculation.
In collaboration with: rmacklem
MFC after: 2 weeks
Diffstat (limited to 'sys/dev/sge')
-rw-r--r-- | sys/dev/sge/if_sgereg.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/sge/if_sgereg.h b/sys/dev/sge/if_sgereg.h index 81b1568..a72d1a5 100644 --- a/sys/dev/sge/if_sgereg.h +++ b/sys/dev/sge/if_sgereg.h @@ -284,7 +284,7 @@ struct sge_desc { #define SGE_RX_RING_CNT 256 /* [8, 1024] */ #define SGE_TX_RING_CNT 256 /* [8, 8192] */ #define SGE_DESC_ALIGN 16 -#define SGE_MAXTXSEGS 32 +#define SGE_MAXTXSEGS 35 #define SGE_TSO_MAXSIZE (65535 + sizeof(struct ether_vlan_header)) #define SGE_TSO_MAXSEGSIZE 4096 #define SGE_RX_BUF_ALIGN sizeof(uint64_t) |