Yeah, I think the theory I mentioned above is the explanation. You can see this effect with the example on this slide (from a talk I'm going to give at BSDCan). I tried various tricks to try to get it to prefetch, but no cigar (but I could easily be missing something). Not sure what to do about it yet, but I'm pretty sure this problem isn't limited to FreeBSD UFS.