NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/52211: vioif stops on dmamap load error



The following reply was made to PR kern/52211; it has been noted by GNATS.

From: Masanobu SAITOH <msaitoh%execsw.org@localhost>
To: gnats-bugs%NetBSD.org@localhost, kern-bug-people%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Cc: msaitoh%execsw.org@localhost
Subject: Re: kern/52211: vioif stops on dmamap load error
Date: Thu, 11 May 2017 17:06:21 +0900

 On 2017/05/03 17:40, hannken%eis.cs.tu-bs.de@localhost wrote:
 >> Number:         52211
 >> Category:       kern
 >> Synopsis:       vioif stops on dmamap load error
 >> Confidential:   no
 >> Severity:       serious
 >> Priority:       medium
 >> Responsible:    kern-bug-people
 >> State:          open
 >> Class:          sw-bug
 >> Submitter-Id:   net
 >> Arrival-Date:   Wed May 03 08:40:00 +0000 2017
 >> Originator:     Juergen Hannken-Illjes
 >> Release:        NetBSD 7.1
 >> Organization:
 > 	
 >> Environment:
 > 	
 > 	
 > System: NetBSD vpnserv.isf.cs.tu-bs.de 7.1 NetBSD 7.1 (gateway.i386) #0: Mon Mar 13 16:40:12 MET 2017  build%builder.isf.cs.tu-bs.de@localhost:/build/nbsd7/obj/obj.i386/sys/arch/i386/compile/gateway.i386 i386
 > Architecture: i386
 > Machine: i386
 >> Description:
 > 	
 >  From time to time the machine prints
 > 
 > 	vioif0: tx dmamap load failed, error code 27
 
 27 is EFBIG.
 
 In vioif.c::vioif_start():
 >                 r = bus_dmamap_load_mbuf(virtio_dmat(vsc),
 >                                          sc->sc_tx_dmamaps[slot],
 >                                          m, BUS_DMA_WRITE|BUS_DMA_NOWAIT);
 >                 if (r != 0) {
 >                         virtio_enqueue_abort(vsc, vq, slot);
 >                         aprint_error_dev(sc->sc_dev,
 >                             "tx dmamap load failed, error code %d\n", r);
 >                         break;
 >                 }
 
   ixg(4), rtwn(4) and vge(4) have a code which calls m_defrag() when
 bus_dmamap_load_mbuf() returned EFBIG. On ixg(4) it really occurs
 and the recovery works fine if a interface's TSO flag is set.
 
   Coudl you show me the output of ifconfig vioif0?
 
   For vioif, it has no TSO function. It also doesn't have JUMBO_MTU,
 so I'm afraid it has another bug in somewhere else.
 
 
 > and most times the interface seems to stop as the machine is no longer
 > accessible from the network.
 > 
 >       $NetBSD: if_vioif.c,v 1.7.2.3 2016/12/23 05:57:40 snj Exp $
 >> How-To-Repeat:
 > 	
 >> Fix:
 > 	
 > 
 >> Unformatted:
 
 
 
 -- 
 -----------------------------------------------
                  SAITOH Masanobu (msaitoh%execsw.org@localhost
                                   msaitoh%netbsd.org@localhost)
 


Home | Main Index | Thread Index | Old Index