[prev in list] [next in list] [prev in thread] [next in thread] 

List:       netbsd-bugs
Subject:    kern/53562: bridge(4) breaks segmentation / TX checksum offloading
From:       rokuyama () rk ! phys ! keio ! ac ! jp
Date:       2018-08-30 9:25:00
Message-ID: 20180830092500.48CAB7A262 () mollari ! NetBSD ! org
[Download RAW message or body]

> Number:         53562
> Category:       kern
> Synopsis:       bridge(4) breaks segmentation / TX checksum offloading
> Confidential:   no
> Severity:       serious
> Priority:       medium
> Responsible:    kern-bug-people
> State:          open
> Class:          sw-bug
> Submitter-Id:   net
> Arrival-Date:   Thu Aug 30 09:25:00 +0000 2018
> Originator:     Rin Okuyama
> Release:        8.99.24
> Organization:
School of Science and Technology, Meiji University
> Environment:
NetBSD rpi3b 8.99.24 NetBSD 8.99.24 (RPI3-64) #24: Thu Aug 30 17:39:24 JST 2018  \
rin@latipes:/var/build/src/sys/arch/evbarm/compile/RPI3-64 evbarm aarch64
> Description:
If a network interface is added to bridge(4), segmentation or TX
checksum offloading do not work. This is because csum_flags are
cleared in bridge_enqueue():

https://nxr.netbsd.org/xref/src/sys/net/if_bridge.c#1401

  1391  void
  1392  bridge_enqueue(struct bridge_softc *sc, struct ifnet *dst_ifp, struct mbuf \
*m,  1393      int runfilt)
  1394  {
  ....
  1398          /*
  1399           * Clear any in-bound checksum flags for this packet.
  1400           */
  1401          m->m_pkthdr.csum_flags = 0;
> How-To-Repeat:
Enable segmentation or TX checksum offloading for a network interface,
and add it to bridge(4). Then, data transmission starts to fail.
> Fix:
Not known.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic