Messages in this thread |  | | Date | Mon, 03 Jun 1996 09:30:19 -0600 (CST) | From | Aaron Ucko <> | Subject | Re: writev() "bug" |
| |
>This doesn't quite qualify as a bug, but it's something I think should >be changed. Currently writev(3) allows a maximum of 8 iov's in the io >vector; if more than 8 are specified, it returns EINVAL. IMHO, this >is far too small, especially for an arbitrary limit: SunOS supports up >to 16, and OSF/1 (aka Digital UNIX) supports up to 1024. I'd like to >see MAX_IOVEC increased to at least 16, and preferably more than that.
Not necessary. As of libc 5.2.18, libc writev()s longer vectors MAX_IOVEC iov's at a time. The only problem occurs when you use a library compiled before readv/writev were syscalls with a newer kernel; in that case the library reverts to its old behavior because MAX_IOVEC is not defined anywhere.
-- Aaron Ucko (ucko@vax1.rockhurst.edu; finger for PGP public key) | httyp! "That's right," he said. "We're philosophers. We think, therefore we am." -- Terry Pratchett, _Small Gods_ | Geek Code 3.1 [for explanation, finger hayden@mankato.msus.edu]: GCS/M/S/C d- s: a18 C++(+++)>++++ UL++>++++ P++ L++>+++++ E- W(-) N++(+) o+ K- w--- O M@ V-(--) PS++(+++) PE- Y(+) PGP(+) t(+) !5 X-- R(-) tv-@ b++(+++) DI+ !D-- G++(+++) e->+++++(*) h!>+ r-(--)>+++ y?
|  |