Re: [RFC][PATCH 0/5] relayfs

Tom Zanussi
2003-07-15T16:47:40Z

Gianni Tedesco writes:
> On Tue, 2003-07-15 at 17:01, Tom Zanussi wrote:
> > Gianni Tedesco writes:
> > >
> > > Could this be used to replace mmap() packet socket, how does it compare?
> >
> > I think so - you could send high volumes of packet traffic to a bulk
> > relayfs channel and read it from the mmap'ed relayfs file in user
> > space. The Linux Trace Toolkit does the same thing with large volumes
> > of trace data - you could look at that code as an example
> > (http://www.opersys.com/relayfs/ltt-on-relayfs.html).
>
> What are the semantics of the mmap'ing the buffer? With mmaped packet
> socket the userspace (read-side) requires no sys-calls apart from when
> the buffer is empty, it then uses poll(2) to sleep until something new
> is put in the buffer. Can relayfs do a similar thing? poll is not
> mentioned in the docs...

You're right - I haven't implemented poll() in the relayfs VFS code
yet. I plan on doing that next, but won't have much time for the next
couple of weeks. Currently, you'd have to do something like LTT does,
which is have the kernel side signal the read-side when data is ready.

Tom

>
> Thanks.
>
> --
> // Gianni Tedesco (gianni at scaramanga dot co dot uk)
> lynx --source www.scaramanga.co.uk/gianni-at-ecsc.asc | gpg --import
> 8646BE7D: 6D9F 2287 870E A2C9 8F60 3A3C 91B5 7669 8646 BE7D
>

--
Regards,

Tom Zanussi <zanussi@us.ibm.com>
IBM Linux Technology Center/RAS