Bug 28260

Summary: UIO_MAXIOV needs to be made public
Product: Base System Reporter: rec
Component: kernAssignee: freebsd-standards (Nobody) <standards>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   

Description rec 2001-06-18 17:00:14 UTC
When I use writev() or readv(), I found that I got an error when the
iovec was more than 1024 long. I checked and the proper limits value
is UIO_MAXIOV. However, while this is in /usr/include/sys/uio.h, it
is behind a #ifdef KERNEL which means that "normal" code won't be
able to see it.

I don't know about any applicable standards where there is an equivalent
limit. (Solaris has a much more stringent restriction of 16 if memory
serves. However, I sometimes use 2000 or more entries to a writev().)

Fix: 

Suggested fix:
1. Move UIO_MAXIOV above the #ifdef KERNEL in uio.h 
- or -
2. Change to use a standard value (whatever it might be, I don't know).
Comment 1 Garrett Wollman freebsd_committer freebsd_triage 2001-08-03 16:51:31 UTC
State Changed
From-To: open->suspended

The soon-to-be-POSIX parameter {IOV_MAX} was introduced in -current. 
Should be merged after 4.4 is unfrozen.
Comment 2 Mike Barcroft freebsd_committer freebsd_triage 2002-11-17 16:56:50 UTC
Responsible Changed
From-To: freebsd-bugs->wollman

Over to Garrett as MFC reminder.
Comment 3 Garrett Wollman freebsd_committer freebsd_triage 2002-11-26 20:37:06 UTC
Responsible Changed
From-To: wollman->standards

I don't have time to do the MFC on this right now; anyone who does is 
welcome to pick up the task.
Comment 4 Dag-Erling Smørgrav freebsd_committer freebsd_triage 2004-02-17 15:46:32 UTC
Responsible Changed
From-To: standards->freebsd-standards

Misattributed PR.
Comment 5 K. Macy freebsd_committer freebsd_triage 2007-11-16 08:56:04 UTC
State Changed
From-To: suspended->closed


4.x is EOL.