diff options
| author | Pyun YongHyeon <yongari@FreeBSD.org> | 2009-06-29 05:12:21 +0000 |
|---|---|---|
| committer | Pyun YongHyeon <yongari@FreeBSD.org> | 2009-06-29 05:12:21 +0000 |
| commit | ca406a44ded4fac34beff45ebcad4afaa72a0804 (patch) | |
| tree | 75d300e835ec18ff4fa1d4071b82dedaf50cb7b1 /sys/dev/ale | |
| parent | d48890cfb8cf92f9f2d49763781b20fd01e1e9d4 (diff) | |
Notes
Diffstat (limited to 'sys/dev/ale')
| -rw-r--r-- | sys/dev/ale/if_ale.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/dev/ale/if_ale.c b/sys/dev/ale/if_ale.c index f5ecb6a4981a1..65e068fa5db39 100644 --- a/sys/dev/ale/if_ale.c +++ b/sys/dev/ale/if_ale.c @@ -620,6 +620,14 @@ ale_attach(device_t dev) ifp->if_capabilities |= IFCAP_VLAN_MTU; ifp->if_capabilities |= IFCAP_VLAN_HWTAGGING | IFCAP_VLAN_HWCSUM; ifp->if_capenable = ifp->if_capabilities; + /* + * Even though controllers supported by ale(3) have Rx checksum + * offload bug the workaround for fragmented frames seemed to + * work so far. However it seems Rx checksum offload does not + * work under certain conditions. So disable Rx checksum offload + * until I find more clue about it but allow users to override it. + */ + ifp->if_capenable &= ~IFCAP_RXCSUM; /* Tell the upper layer(s) we support long frames. */ ifp->if_data.ifi_hdrlen = sizeof(struct ether_vlan_header); |
