Subject: Re: netinet/udp_usrreq.c: extraneous mbuf copying in udp4_realinput()?
To: None <itojun@iijlab.net>
From: Pal Sommerhein <pms-netbsd@sommerhein.com>
List: tech-net
Date: 06/11/2002 08:38:23
> On Tue, Jun 11, 2002 at 06:17:12AM +0900, itojun@iijlab.net wrote:
>
> > I was looking through the code in netinet/udp_usrreq.c and noticed
> > that the mbuf chain was copied both for unicast and
> > broadcast/multicast packets in udp4_realinput() (the copy operation
> > is invoked from udp4_sendup()).  It seems to me that in the unicast
> > case there is no apparent reason for this.  Prior to rev. 1.53 the
> > copying did only happen for the broadcast/multicast case.
> > 
> > Does anyone know why the extra copying was introduced for the unicast
> > case?
> 
> 	due to the extra complexity in supporting RFC2553 IPv4 mapped
> 	address (IPv4 traffic to AF_INET6 socket) i simplified the
> 	codepath, hence the extra mbuf copy.  usually m_copym() will not
> 	require real duplication of packet, as they tend to be M_EXT
> 	cluster mbuf.

Ok, thanks!

Regards,
Pal Sommerhein