From: H. Peter Anvin Date: Tue, 04 Apr 2006 18:21:23 GMT Subject: Re: Solaris cloning woes partly diagnosed Message-ID: <4432B923.7040202@zytor.com> In-Reply-To: Linus Torvalds wrote: > > One thing to do might be to make the itimer use a much higher frequency, > to trigger the problem more easily. > > We do, for example, expect that regular file writing not do that. At least > "write_sha1_from_fd()" will just do a "write()" without testing the error > return, which is bad (it would silently create a truncated object if the > /tmp filesystem filled up). If somebody has their filesystem over NFS > mounted interruptible, partial writes could also happen. > There seems to be a whole bunch of places where we use naked write()s where xwrite or fwrite would be a lot more appropriate. The ssh-* files seem to be particularly offensive in that way. There are also a number of places which call xwrite with the apparent belief that returning short is an error (e.g. blame.c). This as far as I know the more common definition of xwrite(), but is *not* the one used in git -- the one in git only guarantees that at least one character is written. -hpa