Does FreeBSD have sendmmsg or recvmmsg system calls?

Konstantin Belousov kostikbel at gmail.com
Thu Jan 7 20:02:18 UTC 2016


On Thu, Jan 07, 2016 at 11:46:35AM -0800, Luigi Rizzo wrote:
> The libc API obviously needs to be conforming to the existing
> sendmmsg/recvmmsg. I thought your point was that the underlying
> syscall might possibly need a different set of parameters, so we could
> as well experiment a bit to see what is needed before freezing it.
Right, this is a correct representation of my position.
This is why I do not want to provide a kernel interface for backing
the functions.

> 
> Regarding patching the application(s): of course it is not scalable
> if there are many applications that will refuse to compile if
> the *mmsg() functions are absent. However I expect this set of
> application to be minuscule if not empty, and if they exist they
> are probably plagued by other portability issues.
I have an opposite impression.  I think people who proposed the addition
of the API, should weight in there.

> 
> So (and using *mmsg() vs *msg() is about performance) I think that
> until we have an underlying performant implementation of the *mmsg()
> calls, there is no urgency in implementing the libc functions,
> because we might later have to change then libc->syscall wrapper
> anyways.
If only libc functions are implemented, with the loop in usermode,
we do not need any syscall layer and can provide whatever tilt in the
kernel interface which would be found by experiments.


More information about the freebsd-net mailing list