On Thu, Aug 25, 2011 at 1:32 PM, Tommi Virtanen <tommi.virtanen@xxxxxxxxxxxxx> wrote: > On Thu, Aug 25, 2011 at 04:03, Christian Brunner <chb@xxxxxx> wrote: >> + if (buf) { >> + dif = ofs-lastofs; >> + if (dif > 0) { >> + byte *tempbuf = (byte *) malloc(dif); >> + memset(tempbuf, 0, dif); >> + Hash->Update((const byte *) tempbuf, dif); >> + free(tempbuf); >> + } >> + >> + Hash->Update((const byte *) buf, len); >> + lastofs = ofs + len; >> + } > > Does this mean a file with a 100GB hole in it will make you malloc(100GB)? > That's in the read_iterate() callback. It wouldn't be called with anything larger than a single block size. Unless I'm somehow missing, it's still missing the holes. Now it just ignores them, it should be taking them into account as zero data. Yehuda -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html