diff options
author | yongari <yongari@FreeBSD.org> | 2012-05-07 04:56:26 +0000 |
---|---|---|
committer | yongari <yongari@FreeBSD.org> | 2012-05-07 04:56:26 +0000 |
commit | 74d5826dee4ed85c5c5c6a30263eb75ed253f4c7 (patch) | |
tree | 80522b4754910d5fb57580a47bcd90b924c7d784 /sys/dev/bce | |
parent | e3d4e68217e11e23e42a56fe1cf45766bb3c5e13 (diff) | |
download | FreeBSD-src-74d5826dee4ed85c5c5c6a30263eb75ed253f4c7.zip FreeBSD-src-74d5826dee4ed85c5c5c6a30263eb75ed253f4c7.tar.gz |
Restore jumbo frame configuration which was broken in r218423.
Submitted by: Andrey Zonov <andrey <> zonov dot org > (initial version)
Tested by: Andrey Zonov <andrey <> zonov dot org >
MFC after: 1 week
Diffstat (limited to 'sys/dev/bce')
-rw-r--r-- | sys/dev/bce/if_bce.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/sys/dev/bce/if_bce.c b/sys/dev/bce/if_bce.c index e0014c8..3695579 100644 --- a/sys/dev/bce/if_bce.c +++ b/sys/dev/bce/if_bce.c @@ -6842,6 +6842,8 @@ bce_init_locked(struct bce_softc *sc) bcopy(IF_LLADDR(sc->bce_ifp), sc->eaddr, ETHER_ADDR_LEN); bce_set_mac_addr(sc); + if (bce_hdr_split == FALSE) + bce_get_rx_buffer_sizes(sc, ifp->if_mtu); /* * Calculate and program the hardware Ethernet MTU * size. Be generous on the receive if we have room @@ -7436,22 +7438,10 @@ bce_ioctl(struct ifnet *ifp, u_long command, caddr_t data) BCE_LOCK(sc); ifp->if_mtu = ifr->ifr_mtu; - - if (bce_hdr_split == FALSE) { - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - /* - * Because allocation size is used in RX - * buffer allocation, stop controller if - * it is already running. - */ - bce_stop(sc); - } - - bce_get_rx_buffer_sizes(sc, ifp->if_mtu); - + if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; bce_init_locked(sc); } - BCE_UNLOCK(sc); break; |