ZEROCOPY between kernel and userland

thefly thefly at acaro.org
Mon Jul 5 17:11:35 PDT 2004


Hello everybody, i'm writing a netgraph module to get some stats about
the network traffic. Actually i have to pass all the data gathered all
in one piece, to the process which asks me for it. The client should
work like this in userland:

	int * pointer;

	ioctl(dev, MY_COMMAND, pointer);

after this pointer points to the right memory area. The array to pass is
about 500Kb, so copying with copyout() would be too expensive, moving
the array from kernel's addrespace to process's address space would be
fast. 
The question is: what's the actual API to do that, if there's any, in
freebsd 5?

TIA

	
-- 
    Claudio "thefly" Martella
    thefly at acaro.org
    GNU/PG keyid: 0x8EA95625


More information about the freebsd-hackers mailing list