: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.
:
:-Bill
:
:--
:=============================================================================
:-Bill Paul (212) 854-6020 | System Manager, Master of Unix-Fu
What will happen is that NFS will realign the unaligned mbufs, which
requires a copy. NFS previously copied in-place, but my patch rewrites
that code to copy to a new buffer ( because copying in-place breaks
NFS/TCP ).
We could avoid realigning the mbufs by changing the various NFS 32 bit
read/write macros to operate in 16 bit chunks. This might be the best
solution ultimately.
-Matt
Matthew Dillon
<[email protected]>
To Unsubscribe: send mail to [email protected]
with "unsubscribe freebsd-current" in the body of the message