Lines Matching defs:offset
52 xfs_dir2_dataptr_t off; /* current entry's offset */
67 * If the block number in the offset is out of range, we're done.
146 int wantoff; /* starting block offset */
150 unsigned int offset, next_offset;
154 * If the block number in the offset is out of range, we're done.
166 * Extract the byte offset we start at from the seek pointer.
177 for (offset = geo->data_entry_offset;
178 offset < end;
179 offset = next_offset) {
180 struct xfs_dir2_data_unused *dup = bp->b_addr + offset;
181 struct xfs_dir2_data_entry *dep = bp->b_addr + offset;
188 next_offset = offset + be16_to_cpu(dup->length);
195 next_offset = offset +
201 if (offset < wantoff)
204 cook = xfs_dir2_db_off_to_dataptr(geo, geo->datablk, offset);
209 * If it didn't fit, set the final offset to here & return.
225 * Set the offset to a non-existent block 1 and return.
268 * Look for mapped directory blocks at or above the current offset.
358 xfs_dir2_off_t curoff; /* current overall offset */
360 int byteoff; /* offset in current block */
362 unsigned int offset = 0;
366 * If the offset is at or past the largest allowed value,
373 * Inside the loop we keep the main offset value as a byte offset
379 * Loop over directory entries until we reach the end offset.
389 if (!bp || offset >= geo->blksize) {
406 offset = geo->data_entry_offset;
414 * Skip past entries until we reach our offset.
417 while (offset < byteoff) {
418 dup = bp->b_addr + offset;
424 offset += length;
427 dep = bp->b_addr + offset;
430 offset += length;
433 * Now set our real offset.
438 offset);
439 if (offset >= geo->blksize)
447 dup = bp->b_addr + offset;
454 offset += length;
459 dep = bp->b_addr + offset;
478 offset += length;
485 * All done. Set output offset value to current offset.