Messages in this thread | | | Date | Sun, 28 Aug 2011 12:17:36 +0200 | From | Marco Stornelli <> | Subject | Re: [PATCH] xfstests 255: add a seek_data/seek_hole tester |
| |
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
| |