Page MenuHomeFreeBSD

Make p1003_1b.aio_listio_max a tunable
ClosedPublic

Authored by asomers on Jul 14 2017, 4:31 PM.
Tags
None
Referenced Files
F169941893: D11601.id30885.diff
Thu, Sep 3, 1:18 AM
F169853736: D11601.diff
Wed, Sep 2, 6:45 PM
Unknown Object (File)
Mon, Aug 31, 6:16 PM
Unknown Object (File)
Sun, Aug 30, 4:00 AM
Unknown Object (File)
Sat, Aug 29, 12:33 AM
Unknown Object (File)
Tue, Aug 25, 11:11 AM
Unknown Object (File)
Sun, Aug 23, 12:19 PM
Unknown Object (File)
Sat, Aug 22, 10:22 PM
Subscribers

Details

Summary

Make AIO_LISTIO_MAX a tunable

p1003_1b.aio_listio_max is now a tunable. Its value is reflected in the
sysctl of the same name, and the sysconf(3) variable _SC_AIO_LISTIO_MAX.
Its value will be bounded from below by the compile-time constant
AIO_LISTIO_MAX and from above by the compile-time constant
MAX_AIO_QUEUE_PER_PROC and the tunable vfs.aio.max_aio_queue.

Test Plan

sys/aio/lio_kqueue_test with different values for IOCBS_PER_LIO and
p1003_1b.aio_listio_max

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

sys/kern/posix4_mib.c
80 ↗(On Diff #30790)

Even though this is not enabled, probably best to still add the macro here as well. Eventually we should probably just remove the disabled code.

sys/kern/vfs_aio.c
393 ↗(On Diff #30790)

Blank line before comment (bde@ would probably say the comment is banal and can just be removed)

418 ↗(On Diff #30790)

Add missing spaces around '*' while here.

1955 ↗(On Diff #30790)

I'd rather make aio_listio_max a static global variable in vfs_aio.c and not call p31b_getcfg() in all these places.

2161 ↗(On Diff #30790)

Extra blank line?

asomers marked 5 inline comments as done.

Store aio_listio_max as a static variable in vfs_aio.c instead of in
posix4_mib.c's facility array.

sys/kern/vfs_aio.c
172 ↗(On Diff #30885)

Hmm, I think I do like this approach and would be a fan of moving all the AIO-related MIBs into this file. However, I think it would be useful to check in with kib@ and possibly bde@ before moving away from p1b_*().

kib added a subscriber: kib.

I am fine with the move of all aio-related sysctls.

This revision is now accepted and ready to land.Aug 3 2017, 4:12 PM
This revision was automatically updated to reflect the committed changes.