Increase IOV_MAX to at least 1024
Today IOV_MAX on most other platforms is 1024; however, on illumos it is 16. This is properly informed by the value of IOV_MAX. However, there are applications out there (HVM-815) that don't even think to check IOV_MAX and just go to town. We should consider increasing ours to make life for parts of the lx brand easier (OS-3404) and for ourselves.
Today iovectors are declared by the kernel on the stack. If we have a smaller number of I/O vectors, then we continue to allocate them on the stack, otherwise we switch to a kmem allocation.
Updated by John Levon over 2 years ago
This has been in use at Joyent forever.
In addition this has been unit tested via http://cr.illumos.org/~webrev/jlevon/12365/usr/src/test/os-tests/tests/writev/writev_test.c.html
as well as Jerry's original testing.
Updated by Electric Monk over 2 years ago
- Status changed from New to Closed
commit 8e9352593f28b1a84101b11e1c6db6aabf187a1c Author: Bryan Cantrill <firstname.lastname@example.org> Date: 2020-03-12T09:44:29.000Z 5880 Increase IOV_MAX to at least 1024 Portions contributed by: Jerry Jelinek <email@example.com> Reviewed by: Andy Fiddaman <firstname.lastname@example.org> Reviewed by: Yuri Pankov <email@example.com> Approved by: Dan McDonald <firstname.lastname@example.org>