summaryrefslogtreecommitdiffstats
path: root/sys/dev/bce
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2012-05-07 04:56:26 +0000
committeryongari <yongari@FreeBSD.org>2012-05-07 04:56:26 +0000
commit74d5826dee4ed85c5c5c6a30263eb75ed253f4c7 (patch)
tree80522b4754910d5fb57580a47bcd90b924c7d784 /sys/dev/bce
parente3d4e68217e11e23e42a56fe1cf45766bb3c5e13 (diff)
downloadFreeBSD-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.c18
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;
OpenPOWER on IntegriCloud