From 1dc9ad2cb932264d7764537f9ffc46d9a6979935 Mon Sep 17 00:00:00 2001 From: gallatin Date: Tue, 12 Jun 2007 19:53:44 +0000 Subject: [PATCH] Use if_capenable to allow LRO enabled drivers to bypass the MTU check in ether_input(). --- sys/net/if_ethersubr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index 8615e8655468..29014fa975a2 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -544,7 +544,8 @@ ether_input(struct ifnet *ifp, struct mbuf *m) etype = ntohs(eh->ether_type); #ifdef DIAGNOSTIC if (m->m_pkthdr.len > - ETHER_MAX_FRAME(ifp, etype, m->m_flags & M_HASFCS)) { + ETHER_MAX_FRAME(ifp, etype, m->m_flags & M_HASFCS) && + (ifp->if_capenable & IFCAP_LRO) == 0) { if_printf(ifp, "discard oversize frame " "(ether type %x flags %x len %u > max %lu)\n", etype, m->m_flags, m->m_pkthdr.len,