Re: preadv2/pwritev2 rename
From: Michael Kerrisk (man-pages) <hidden>
Date: 2014-10-21 06:53:28
On Tue, Oct 21, 2014 at 8:42 AM, Michael Kerrisk (man-pages) [off-list ref] wrote:
Hello Milosz, On Mon, Oct 20, 2014 at 11:52 PM, Milosz Tanski [off-list ref] wrote:quoted
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.quoted
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
Also, please ensure that future iterations of these patches CC linux-api@ as per Documentation/SubmitChecklist. The past ones did not, and so this is the first mention of these system calls that I happened to see. Cheers, Michael -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/