Subject: Re: kern/29407: panic: m_copyback0: read-only
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: netbsd-bugs
Date: 02/17/2005 01:21:01
The following reply was made to PR kern/29407; it has been noted by GNATS.

From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
To: christos@zoulas.com
Cc: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org,
	gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: kern/29407: panic: m_copyback0: read-only
Date: Thu, 17 Feb 2005 10:19:50 +0900

 hi,
 
 > Try this:
 > 
 > Index: uipc_mbuf.c
 > ===================================================================
 > RCS file: /cvsroot/src/sys/kern/uipc_mbuf.c,v
 > retrieving revision 1.92
 > diff -u -u -r1.92 uipc_mbuf.c
 > --- uipc_mbuf.c	24 Jan 2005 21:25:09 -0000	1.92
 > +++ uipc_mbuf.c	16 Feb 2005 23:11:52 -0000
 > @@ -1077,7 +1077,7 @@
 >  #if defined(DEBUG)
 >  	error =
 >  #endif /* defined(DEBUG) */
 > -	m_copyback0(&m0, off, len, cp,
 > +	m_copyback0(&m0, off, len, cp, M_COPYBACK0_COW|
 >  	    M_COPYBACK0_COPYBACK|M_COPYBACK0_EXTEND, M_DONTWAIT);
 >  
 >  #if defined(DEBUG)
 
 this isn't correct because, with M_COPYBACK0_COW, m_copyback0 can
 alter m0 and there's no way for m_copyback to tell it to caller.
 (and more worse if allocation failed.)
 
 YAMAMOTO Takashi