Bugzilla – Bug 3291
XIO writev doesn't handle iovcnt > IOVEC
Last modified: 2005-05-05 09:58:07
You need to
before you can comment on or make changes to this bug.
When doing a writev with an iovec containing too many buffers, xio write fails
with "globus_xio: System error in writev: Invalid argument". It'd be nicer if
this were handled somehow by the XIO drivers or system.
This brings up interesting issues with drivers that are not reliable and
ordered. May be a good time to introduce some driver description funtionality.
Created an attachment (id=601) [details]
Attaching patch which keeps the iovc passed to writev and readv smaller than
The udp driver is the only one that i am aware of that can't repass data down
the stack (semantically). It properly handles any short write as a failure so
this patch is fine. We need to add documentation to the driver code to say that
it is the drivers responsibility to deal with short reads/writes if it must have
all the data sent in a single packet.
Down the road we may want to add driver descriptors which tell the xio
framework, and other drivers, hints about a driver. Things like ordered,
reliable, packet, stream, etc. This would potientially allow the framework to
ease more burden on the driver.
Patch committed to 4.0 branch and trunk.
Added to advisories page.
Update package available at