cvs commit: src/sys/conf files src/sys/kern kern_subr.c
uipc_jumbo.c src/sys/pci if_ti.c src/sys/sys jumbo.h
Alan Cox
alc at cs.rice.edu
Mon Dec 6 16:19:46 PST 2004
On Sun, Dec 05, 2004 at 08:22:54PM -0800, Nate Lawson wrote:
> Alan Cox wrote:
> >alc 2004-12-06 00:43:40 UTC
> >
> > FreeBSD src repository
> >
> > Modified files:
> > sys/conf files
> > sys/kern kern_subr.c
> > sys/pci if_ti.c
> > Removed files:
> > sys/kern uipc_jumbo.c
> > sys/sys jumbo.h
> > Log:
> > Update the Tigon 1 and 2 driver to use the sf_buf API for implementing
> > zero-copy receive of jumbo frames. This eliminates the need for the
> > jumbo frame allocator implemented in kern/uipc_jumbo.c and sys/jumbo.h.
> > Remove it.
> >
> > Note: Zero-copy receive of jumbo frames did not work without these
> > changes;
> > I believe there was insufficient locking on the jumbo vm object.
> >
> > Tested by: ken@
> > Discussed with: gallatin@
> >
> > Revision Changes Path
> > 1.973 +0 -1 src/sys/conf/files
> > 1.93 +4 -6 src/sys/kern/kern_subr.c
> > 1.12 +0 -254 src/sys/kern/uipc_jumbo.c (dead)
> > 1.98 +23 -15 src/sys/pci/if_ti.c
> > 1.6 +0 -59 src/sys/sys/jumbo.h (dead)
>
> Excellent, thanks for doing this. Having a generic zero-copy API was
> something we had needed for a long time. Perhaps cam_periph_mapmem()
> (sys/cam/cam_periph.c) could also benefit?
Vmapbuf() is still probably the best method for cam_periph_mapmem().
A limitation of the sf_buf interface is that it cannot map two or more
physical pages to contiguous virtual pages. Vmapbuf() does.
Regards,
Alan
More information about the cvs-src
mailing list