Hello HATAYAMA, On 2014/9/18 20:29, HATAYAMA, Daisuke wrote: > Rigorously, this design depends on implementation of filesystems where it's > possible to lseek and write data onto already allocated blocks even > after the > filesystem is full. To show correctness of this design, you should show > that > test results for a variety of filesystems such as ext3, ext4, xfs, > btrfs, etc. Actually, I've tested whether lseek and write can execute on those filesystems( ext2, ext3, ext4, xfs, and btrfs) when there's no more space, and both of these two system calls can work well on all of those filesystems(the snapshot function of btrfs may be confused, but it just need to allocate diskspace when creating snapshot and will never aquire more diskspace automically in the future). But I couldn't get any test results of these testing, because there's no error message when doing such tests. > > Of course, if this design doesn't work well on some filesystem, then we > just > see the second ENOSPC and we give up addtional work. This is the same > situation > as now. There's no demerit. As you said, this design won't introduce any more errors. So the influence of the filesystem is very limited. PS: the modified patches(according to you and Dave's comments) will be send later. -- Regards Wang Xiao