> > > :> [ENOBUFS] Insufficient system buffer space exists to complete > > > the op- > > > :> eration. > > > : > > > :Do you know what kind of circumstances that error *really* occurs > > > :under? > > > > So you can get ENOBUFS not related to mbufs for UDP/local datagram > > sockets, but you should never get ENOBUFS from write for TCP sockets > > or local stream sockets. > > So, do you want to enumerate the cases in which this error can occur in the > man page? This is not generally done, now that we have verified it is > possible for the system to generate ENOBUFS on a writev. I think the text > stands as it is.
It should probably mention that it doesn't occur for most files (or that it only occurs for datagram sockets - although it probably applies to some types of raw sockets, too, and possibly non-PF_INET/PF_UNIX sockets) to avoid people doing unnecessary checking or implementing kernel code that bails out when it shouldn't. It should be a fair requirement that the kernel continue to never fail with ENOBUFS for a write to a reliable stream (local file, fifo, pipe or stream socket) and that such cases be treated as bugs. I would assume that this corresponds to how other systems operate, as well. Of course I'm no authority on this, and I'm not sure about NFS writes. To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-hackers" in the body of the message