On Wed, Apr 09 2008, Andrew Morton wrote: > On Wed, 09 Apr 2008 17:57:56 +0200 > Miklos Szeredi <miklos@xxxxxxxxxx> wrote: > > > generic_file_splice_read() goes into an infinite loop if it races with > > truncation. I've found this with fsx-linux on NFS over fuse. > > > > Perhaps the whole while() loop is bogus, but I can't tell from a > > cursory glance at __generic_file_splice_read() if it will return zero > > only on EOF, or it can do that for other reasons as well. In the > > latter case the loop is obviously needed. > > > > This simplistic patch fixes the issue for me. > > > > We found suspicious-looking code in generic_file_splice_read() back in > February. See http://lkml.org/lkml/2008/2/29/443. I suspect that patch > (if it works) will address the truncate lockup as well - it zaps the loop > entirely. > > Unfortunately Allard never got back to us (probably because he's running > 2.6.24 which has a quite different generic_file_splice_read()) and the > patch didn't get anywhere. Hmm strange, I was pretty sure I pushed my patch back then. I'll double check and make sure it gets upstream asap. > Nobody has tested this at all, to my knowledge. The original reporter did not, however others did. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html