Are u folks aware that you wont get an EAGAIN/SIGIO sequence if there is no avail socket buffer space ? on an O_NONBLOCK socketed fd, if u writev too many characters ( approx 260k worth), u 1) get only a partial write ( ~~60k chars ) 2) Try to write the other chars on the next writev() gets you an EAGAIN error. Bec its NONBLOCKED, we sleep waiting for the SIGIO. ( or do other useless things till we get the SIGIO signal ) 3) We sleep forever waiting for a sigio that just aint comming. It appears that there is code int the linux/net to handle the SO_NOSPACE flag that get sets when the error occures, but apparently just doesn't work the same way when the tcp I/O transmission is complete where i get the expected SIGIO. Is this something simple to fix ( a missing reference to callback3() ), or is this a rewrite? gat This is linux 2.0.33 on alpha ( the last 2.0.xx kern that had an acceptable adaptec controller code! )