On Thu, Apr 19, 2012 at 09:15:40AM -0500, Eric Sandeen wrote: > On 4/19/12 8:10 AM, Jouko Orava wrote: > > I'd also like to point at the real bug here, in Jouni's original strace: > > > > writev(3, [{"\0\0\0\0\0\0\0\0", 8}, {"", 2147483648}], 2) = -2147483640 > > > > The syscall returns a negative value, which is not the actual number of > > bytes written (since it is 32-bit wrapped), and errno has not been > > changed. There is no way for userspace to handle this result correctly! > > > > There is no way anyone sane should just gloss over this saying > > "programmer fault, you're doing it wrong". > > This is a real bug, and deserves fixing sooner rather than later. > > Agreed, I think Dave was a little to quick on the draw on his reply. :) I was pointing the -EFAULT error in the second syscall which was just being passed the 2GB sized buffer, not the above error from the first syscall. Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html