Lines Matching refs:offset

26 	Map& Add(off_t offset, off_t length, off_t diskOffset);
33 status_t GetFileMap(off_t offset, off_t length, file_io_vec* vecs,
39 int32 _IndexFor(off_t offset);
94 Map::Add(off_t offset, off_t length, off_t diskOffset)
96 _Verbose(" Add(): offset %lld, length %lld, diskOffset %lld", offset,
100 fOffsets[fCount] = offset;
101 fVecs[fCount].offset = diskOffset;
149 for (off_t offset = 0; offset < fSize; offset += 256) {
150 fTestOffset = offset;
153 status_t status = file_map_translate(fMap, offset, fTestLength,
156 _Error("file_map_translate(offset %lld) failed: %s", offset,
160 int32 index = _IndexFor(offset);
162 _Error("index for offset %lld not found!", offset);
164 off_t diff = offset - fOffsets[index];
170 if (fTestVecs[0].offset != fVecs[index].offset + diff) {
171 _Error("offset mismatch: got %lld, should be %lld",
172 fTestVecs[0].offset, fVecs[index].offset + diff);
181 Map::GetFileMap(off_t offset, off_t length, file_io_vec* vecs,
184 int32 index = _IndexFor(offset);
186 _Error("No vec for offset %lld\n", offset);
188 _Verbose(" GetFileMap(): offset: %lld, length: %lld, index %ld", offset,
199 off_t diff = offset - fOffsets[index];
200 vecs[count].offset = fVecs[index].offset + diff;
202 _Verbose(" [%lu] offset %lld, length %lld", count,
203 vecs[count].offset, vecs[count].length);
206 offset += vecs[count].length;
231 fprintf(stderr, " [%lu] offset %lld, length %lld, disk offset %lld\n",
232 i, fOffsets[i], fVecs[i].length, fVecs[i].offset);
236 fprintf(stderr, "got for offset %lld, length %lld:\n",
241 fprintf(stderr, " [%lu] offset %lld, length %lld\n",
242 i, fTestVecs[i].offset, fTestVecs[i].length);
270 Map::_IndexFor(off_t offset)
273 if (offset >= fOffsets[i] && offset < fOffsets[i] + fVecs[i].length)
285 vfs_get_file_map(struct vnode* vnode, off_t offset, uint32 length,
289 return map->GetFileMap(offset, length, vecs, _vecCount);