Re: [PATCH] xfstests 255: add a seek_data/seek_hole tester

From: Marco Stornelli
Date: Sun Aug 28 2011 - 06:23:56 EST


Il 27/08/2011 10:30, Marco Stornelli ha scritto:
Il 26/08/2011 16:41, Zach Brown ha scritto:
Hole: a range of the file that contains no data or is made up
entirely of NULL (zero) data. Holes include preallocated ranges of
files that have not had actual data written to them.

No for me. A hole is made up of zero data? It's a strange definition
for me.

It's a very natural definition for me. It mirrors the behaviour of
read() of sparse data inside i_size that file system authors already
have to consider.

It's also a reminder for people that this interface is about avoiding
reading zeros. Systems that track contents can do this for files that
had tons of zeros written. The data is there but the app is
specifically asking us to skip it by using SEEK_DATA.

- z


I think we need to consider a hole and "data not present/not written
yet" as two different cases even they are related. For example, if I do
an fallocate without keep size option, then I do a read, I have the same
behavior of sparse data inside i_size, but the blocks are allocated so
no sparse data in this case. Simply there are no difference from app
point of view.

Marco

Please don't care about the last part, when reading in this case the app will have a return value different from zero obviously, I was under the effect of a beer :) However I'd add to the definition, that we consider holes only inside i_size, as Zack said. In this way, we haven't got any ambiguity for preallocated space beyond eof.

Marco
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/