Thread (1 message) 1 message, 1 author, 2014-10-21

Re: preadv2/pwritev2 rename

From: Michael Kerrisk (man-pages) <hidden>
Date: 2014-10-21 06:42:41

Hello Milosz,

On Mon, Oct 20, 2014 at 11:52 PM, Milosz Tanski [off-list ref] wrote:
Christoph and/or Jeff,

I updated the patch for 3.18-rc1 and I'm going to resend it as non-RFC
as I didn't get comments last time.

I only have one stupid question... I'm going to rename the calls to
preadv6 and pwritev6 (so it's more like the other syscalls: dup3,
accept4, eventfd2) but I'm not sure if i should call it preadv5 or
pwritev6 since the offset argument is split into two different
arguments (upper and lower part).
It's points like this that show exactly why naming system calls after
the number of their arguments is a very bad idea[1]. Please don't do
it. pwritev2() and preadv2() are not pretty either, but are marginally
better. pwritev_fl() and preadv_fl() (or simialr) might also be okay,
I guess.
Also, In our application we were able to get about 20%-30% reduction
in response time when using this before queuing in a IO thread pool on
the read path. It's a pretty nice win in the real world.
Cheers,

Michael

http://blog.man7.org/2014/02/system-call-naming-and-numbering.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help