Subject: Re: port-sparc64/29473: nfs + bus_dmamap_load_mbuf often results in a hang
To: None <port-sparc64-maintainer@netbsd.org, gnats-admin@netbsd.org,>
From: john heasley <heas@shrubbery.net>
List: netbsd-bugs
Date: 03/04/2005 16:23:02
The following reply was made to PR port-sparc64/29473; it has been noted by GNATS.

From: john heasley <heas@shrubbery.net>
To: gnats-bugs@netbsd.org
Cc: port-sparc64-maintainer@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org
Subject: Re: port-sparc64/29473: nfs + bus_dmamap_load_mbuf often results in a hang
Date: Fri, 4 Mar 2005 16:22:51 +0000

 nice.  seems so obvious now.
 
 Fri, Mar 04, 2005 at 10:59:02AM +0000, Steve Woodford:
 >  >  first, the server does not respond to ping and getty does not respond
 >  > on the console.  It does appear as if, from _load_mbuf, it enters
 >  > pmap_extract, though it does not show-up in the trace.
 >  
 >  Can you try the attached patch to sparc64/machdep.c please?
 >  
 >  Cheers, Steve
 >  
 >  
 >  --Boundary-00=_X9DKCZxpK1eAenk
 >  Content-Type: text/x-diff;
 >    charset="iso-8859-1";
 >    name="sparc64-machdep.c.diff"
 >  Content-Transfer-Encoding: 7bit
 >  Content-Disposition: attachment;
 >  	filename="sparc64-machdep.c.diff"
 >  
 >  Index: machdep.c
 >  ===================================================================
 >  RCS file: /cvsroot/src/sys/arch/sparc64/sparc64/machdep.c,v
 >  retrieving revision 1.177
 >  diff -u -r1.177 machdep.c
 >  --- machdep.c	30 Jan 2005 16:56:26 -0000	1.177
 >  +++ machdep.c	4 Mar 2005 10:57:00 -0000
 >  @@ -1113,9 +1113,6 @@
 >   		vaddr_t vaddr = mtod(m, vaddr_t);
 >   		long buflen = (long)m->m_len;
 >   
 >  -		if (buflen == 0)
 >  -			continue;
 >  -
 >   		len += buflen;
 >   		while (buflen > 0 && i < MAX_DMA_SEGS) {
 >   			paddr_t pa;
 >  
 >  --Boundary-00=_X9DKCZxpK1eAenk--
 >