diff options
| author | Hans Petter Selasky <hselasky@FreeBSD.org> | 2014-09-13 08:26:09 +0000 |
|---|---|---|
| committer | Hans Petter Selasky <hselasky@FreeBSD.org> | 2014-09-13 08:26:09 +0000 |
| commit | eb93b77ae4a354370a1116d33522893cd1fbc1b3 (patch) | |
| tree | d34b1dd02c73734a9f41558066a1d389f2f3c6f8 /sys/dev/vmware | |
| parent | abafbab15fb7ecadd0cd655caa672329369c9142 (diff) | |
Notes
Diffstat (limited to 'sys/dev/vmware')
| -rw-r--r-- | sys/dev/vmware/vmxnet3/if_vmx.c | 6 | ||||
| -rw-r--r-- | sys/dev/vmware/vmxnet3/if_vmxvar.h | 5 |
2 files changed, 7 insertions, 4 deletions
diff --git a/sys/dev/vmware/vmxnet3/if_vmx.c b/sys/dev/vmware/vmxnet3/if_vmx.c index f3fde92e3f7a1..dd0eb6c7fc8df 100644 --- a/sys/dev/vmware/vmxnet3/if_vmx.c +++ b/sys/dev/vmware/vmxnet3/if_vmx.c @@ -1722,7 +1722,11 @@ vmxnet3_setup_interface(struct vmxnet3_softc *sc) ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; ifp->if_init = vmxnet3_init; ifp->if_ioctl = vmxnet3_ioctl; - ifp->if_hw_tsomax = VMXNET3_TSO_MAXSIZE; + + ifp->if_hw_tsomax = IF_HW_TSOMAX_BUILD_VALUE( + 65535 - sizeof(struct ether_vlan_header) /* bytes */, + VMXNET3_TX_MAXSEGS /* maximum frag count */, + VMXNET3_TX_MAXSEGSHIFT /* frag size */); #ifdef VMXNET3_LEGACY_TX ifp->if_start = vmxnet3_start; diff --git a/sys/dev/vmware/vmxnet3/if_vmxvar.h b/sys/dev/vmware/vmxnet3/if_vmxvar.h index 6c797214b2ee1..a6129f911fbe7 100644 --- a/sys/dev/vmware/vmxnet3/if_vmxvar.h +++ b/sys/dev/vmware/vmxnet3/if_vmxvar.h @@ -277,14 +277,13 @@ struct vmxnet3_softc { */ #define VMXNET3_TX_MAXSEGS 32 #define VMXNET3_TX_MAXSIZE (VMXNET3_TX_MAXSEGS * MCLBYTES) -#define VMXNET3_TSO_MAXSIZE \ - (VMXNET3_TX_MAXSIZE - sizeof(struct ether_vlan_header)) /* * Maximum support Tx segments size. The length field in the * Tx descriptor is 14 bits. */ -#define VMXNET3_TX_MAXSEGSIZE (1 << 14) +#define VMXNET3_TX_MAXSEGSHIFT 14 +#define VMXNET3_TX_MAXSEGSIZE (1 << VMXNET3_TX_MAXSEGSHIFT) /* * The maximum number of Rx segments we accept. When LRO is enabled, |
