Lines Matching refs:offset
200 romfs_strnlen(struct inode *i, unsigned long offset, unsigned long count) in romfs_strnlen() argument
206 if (offset >= maxsize) in romfs_strnlen()
210 if (count > maxsize || offset+count > maxsize) in romfs_strnlen()
211 count = maxsize-offset; in romfs_strnlen()
213 bh = sb_bread(i->i_sb, offset>>ROMBSBITS); in romfs_strnlen()
217 avail = ROMBSIZE - (offset & ROMBMASK); in romfs_strnlen()
219 res = strnlen(((char *)bh->b_data)+(offset&ROMBMASK), maxsize); in romfs_strnlen()
226 offset += maxsize; in romfs_strnlen()
228 bh = sb_bread(i->i_sb, offset>>ROMBSBITS); in romfs_strnlen()
242 romfs_copyfrom(struct inode *i, void *dest, unsigned long offset, unsigned long count) in romfs_copyfrom() argument
248 if (offset >= maxsize || count > maxsize || offset+count>maxsize) in romfs_copyfrom()
251 bh = sb_bread(i->i_sb, offset>>ROMBSBITS); in romfs_copyfrom()
255 avail = ROMBSIZE - (offset & ROMBMASK); in romfs_copyfrom()
257 memcpy(dest, ((char *)bh->b_data) + (offset & ROMBMASK), maxsize); in romfs_copyfrom()
263 offset += maxsize; in romfs_copyfrom()
266 bh = sb_bread(i->i_sb, offset>>ROMBSBITS); in romfs_copyfrom()
286 unsigned long offset, maxoff; in romfs_readdir() local
295 offset = filp->f_pos; in romfs_readdir()
296 if (!offset) { in romfs_readdir()
297 offset = i->i_ino & ROMFH_MASK; in romfs_readdir()
298 if (romfs_copyfrom(i, &ri, offset, ROMFH_SIZE) <= 0) in romfs_readdir()
300 offset = be32_to_cpu(ri.spec) & ROMFH_MASK; in romfs_readdir()
305 if (!offset || offset >= maxoff) { in romfs_readdir()
306 offset = maxoff; in romfs_readdir()
307 filp->f_pos = offset; in romfs_readdir()
310 filp->f_pos = offset; in romfs_readdir()
313 if (romfs_copyfrom(i, &ri, offset, ROMFH_SIZE) <= 0) in romfs_readdir()
316 j = romfs_strnlen(i, offset+ROMFH_SIZE, sizeof(fsname)-1); in romfs_readdir()
321 romfs_copyfrom(i, fsname, offset+ROMFH_SIZE, j); in romfs_readdir()
323 ino = offset; in romfs_readdir()
327 if (filldir(dirent, fsname, j, offset, ino, in romfs_readdir()
332 offset = nextfh & ROMFH_MASK; in romfs_readdir()
342 unsigned long offset, maxoff; in romfs_lookup() local
352 offset = dir->i_ino & ROMFH_MASK; in romfs_lookup()
354 if (romfs_copyfrom(dir, &ri, offset, ROMFH_SIZE) <= 0) in romfs_lookup()
358 offset = be32_to_cpu(ri.spec) & ROMFH_MASK; in romfs_lookup()
367 if (!offset || offset >= maxoff) in romfs_lookup()
369 if (romfs_copyfrom(dir, &ri, offset, ROMFH_SIZE) <= 0) in romfs_lookup()
373 fslen = romfs_strnlen(dir, offset+ROMFH_SIZE, ROMFH_SIZE); in romfs_lookup()
377 romfs_copyfrom(dir, fsname, offset+ROMFH_SIZE, len+1); in romfs_lookup()
383 fslen = romfs_strnlen(dir, offset+ROMFH_SIZE, sizeof(fsname)-1); in romfs_lookup()
385 romfs_copyfrom(dir, fsname, offset+ROMFH_SIZE, len+1); in romfs_lookup()
391 offset = be32_to_cpu(ri.next) & ROMFH_MASK; in romfs_lookup()
396 offset = be32_to_cpu(ri.spec) & ROMFH_MASK; in romfs_lookup()
398 inode = romfs_iget(dir->i_sb, offset); in romfs_lookup()
421 loff_t offset, size; in romfs_readpage() local
433 offset = page_offset(page); in romfs_readpage()
437 if (offset < size) { in romfs_readpage()
440 size -= offset; in romfs_readpage()
443 filled = romfs_copyfrom(inode, buf, ROMFS_I(inode)->i_dataoffset+offset, readlen); in romfs_readpage()