From owner-freebsd-net@FreeBSD.ORG Fri Oct 8 21:38:01 2004 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DBCD316A4CE; Fri, 8 Oct 2004 21:38:01 +0000 (GMT) Received: from mail.vicor-nb.com (bigwoop.vicor-nb.com [208.206.78.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id BFB6143D5A; Fri, 8 Oct 2004 21:38:01 +0000 (GMT) (envelope-from julian@elischer.org) Received: from elischer.org (julian.vicor-nb.com [208.206.78.97]) by mail.vicor-nb.com (Postfix) with ESMTP id 821637A41E; Fri, 8 Oct 2004 14:38:01 -0700 (PDT) Message-ID: <416708B9.6090205@elischer.org> Date: Fri, 08 Oct 2004 14:38:01 -0700 From: Julian Elischer User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.3.1) Gecko/20030516 X-Accept-Language: en, hu MIME-Version: 1.0 To: Giorgos Keramidas References: <20041008151515.GA3136@orion.daedalusnetworks.priv> <20041008203434.GA2770@cell.sick.ru> <20041008205117.GA7818@gothmog.gr> In-Reply-To: <20041008205117.GA7818@gothmog.gr> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit cc: freebsd-net@freebsd.org cc: Gleb Smirnoff Subject: Re: Calling m_pullup in ether_input X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Oct 2004 21:38:02 -0000 Giorgos Keramidas wrote: >On 2004-10-09 00:34, Gleb Smirnoff wrote: > > >>On Fri, Oct 08, 2004 at 06:15:15PM +0300, Giorgos Keramidas wrote: >>G> In ether_input() we unconditionaly discard the mbufs whose m_len is less than >>G> ETHER_HDR_LEN. A bit higher M_PKTHDR has been checked but the check made >>G> before discarding the frame doesn't pay attention to the m->m_pkthdr.len (the >>G> total packet length). >> >>In my humble opinion, all Ethernet device drivers are intentionally written >>in such a way that they always pass an mbuf with contigous Ethernet header >>to ether_input(). >> I'm not convinced this is true for jumbo backets. >> >> > >I know, but thanks for verifying what I had understood so far :-) > > > >>Why did you write this patch? Do you really have packet loss? >> >> > >Not really. Just trying to see if there _was_ any packet loss first. >After running for several hours, the counters are still zero. I think >this means the case of dropped packets would be so rare that there's no >real reason to worry too much about lost packets. > > > >>G> I am trying to find out how often this happens, by using the attached patch to >>G> count the number of small frames received in ether_input() and the number of >>G> failed m_pullup() attempts that result from that. >> >>And what results do you have? >> >> > >I'll keep this change in my workstation for a week or so. No signs of >dropped packets yet, though. > > > >>G> Does this change seem reasonable as an instrumentation of the particular >>G> problem or am I unknowingly breaking something in the way ether_input() is >>G> supposed to work? >> >>AFAIK, this patch does not break anything but just adds more processing. >> >> > >Thanks for the reply. I'm (somewhat slowly) learning more about the way >the networking code. A little more processing is a small penalty to pay >for trying out things. > >- Giorgos > >_______________________________________________ >freebsd-net@freebsd.org mailing list >http://lists.freebsd.org/mailman/listinfo/freebsd-net >To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > >