On Fri 31-05-13 08:34:14, Dave Chinner wrote: > On Thu, May 30, 2013 at 10:49:21PM +0200, Jan Kara wrote: > > On Thu 30-05-13 15:05:02, Eric Sandeen wrote: > > > On 5/30/13 3:01 PM, Jan Kara wrote: > > > > On Thu 30-05-13 08:48:24, Eric Sandeen wrote: > > > >> On 5/30/13 7:45 AM, Jan Kara wrote: > > > >>> Test whether SEEK_HOLE and SEEK_DATA works correctly with offsets over > > > >>> 4GB. > > > >> > > > >> > > > >> Hm, should we add 2T as well while we're at it? > > > >> > > > >> (and does this cause any new failures?) > > > > Yes, ext4 is broken. I've sent fixes for it yesterday. I'm not sure what > > > > > > Argh, sorry I forgot that. I just want to be careful about more rigorous > > > tests making it look like we have regressions in the code. > > > > > > > exactly would overflow at 2T ... block counts if signed int is used and > > > > blocksize is 1KB? > > > > > > Hum ok, where'd I come up with 2T? :) never mind that maybe, unless > > > there are other potential trouble points we should add (8T? 16T for > > > filesystems that can handle it?) > > Yeah, so 8T + something might be interesting and both ext4 & xfs should > > handle that fine. 16T + something might be interesting for xfs if it > > supports that size. I'll update this patch with these checks. > > What boundary traversal are we trying to test at these high > offsets? If fs converts passed offsets to block numbers (as ext4 does) and wrongly used 32-bit signed instead of 32-bit unsigned type for block numbers, the overflow would happen at 8T. In case of XFS 64-bit counters should be used for blocks so checking somewhere beyond 16T is for that. I'm testing at 3 different offsets because different filesystems have different s_maxbytes settings so we cannot just test beyond 16 TB - ext4 would just return EFBIG for that. Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs