From owner-freebsd-hackers Wed Apr 28 11:41:19 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from herring.nlsystems.com (nlsys.demon.co.uk [158.152.125.33]) by hub.freebsd.org (Postfix) with ESMTP id D2B2C15481; Wed, 28 Apr 1999 11:41:09 -0700 (PDT) (envelope-from dfr@nlsystems.com) Received: from localhost (dfr@localhost) by herring.nlsystems.com (8.9.3/8.8.8) with ESMTP id TAA41287; Wed, 28 Apr 1999 19:41:25 +0100 (BST) (envelope-from dfr@nlsystems.com) Date: Wed, 28 Apr 1999 19:41:25 +0100 (BST) From: Doug Rabson To: Bill Paul Cc: Matthew Dillon , hackers@freebsd.org, current@freebsd.org Subject: Re: NFS Patch #8 for current available - new TCP fixes In-Reply-To: <199904281327.JAA29467@skynet.ctr.columbia.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Wed, 28 Apr 1999, Bill Paul wrote: > Of all the gin joints in all the towns in all the world, Matthew Dillon > had to walk into mine and say: > > > (fanfair!) > > (Darth Vader's imperial march theme) > > > NFS Patch #8 for -current is now available. This patch fixes serious bugs > > w/ NFS/TCP. Probably not *all* the failure conditions, but hopefully > > most of them. > [...] > > > Neither the 'de' nor the 'xl' ethernet drivers align the packet. The 'xl' > > driver conditionally aligns it for the alpha. Part of the patch fixes > > the 'xl' driver to unconditionally align the packet buffer in order to > > improve NFS performance. I could not do the same for the 'de' driver > > because I am unsure if the dec chipset can handle an unaligned start > > address. > > >From what I can tell, the DEC parts make you specify an RX DMA buffer > address that is longword aligned. There are actually not that many devices > where you're allowed to use arbitrary byte-aligned addresses for receive > buffers (the 3Com XL and Intel 'speedo' chips let you do it, as well as the > ThunderLAN, and the Alteon Tigon NIC; I _think_ the AMD PCnet/LANCE > devices let you do it, but that's about it). > > For parts that don't support arbitrary alignment, you have to copy. > Now, in some of the drivers that I ported to the alpha, I only copied > the first small section of the packet in order to get the IP header > aligned (since failing to do this causes an unaligned access trap in > the IP code). This is faster than copying the entire packet to fix > the alignment, but I'm not sure what effect it has on NFS. > > That said, although I haven't looked too closely at the de driver (it > scares me -- a lot), it should have some sort of gimmick to fix the > packet alignment otherwise it wouldn't work on the alpha. The de driver copies the entire packet. -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 181 442 9037 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message