18 void **kaddr,
unsigned long *pfn)
21 const struct block_device_operations *
ops = bdev->
bd_disk->fops;
26 BUG_ON(!ops->direct_access);
27 return ops->direct_access(bdev, sector, kaddr, pfn);
31 __ext2_get_block(
struct inode *inode,
pgoff_t pgoff,
int create,
34 struct buffer_head
tmp;
37 memset(&
tmp, 0,
sizeof(
struct buffer_head));
39 *result =
tmp.b_blocknr;
42 if (!
tmp.b_blocknr && !rc) {
57 rc = __inode_direct_access(inode, block, &kaddr, &pfn);
68 !sb->
s_bdev->bd_disk->fops->direct_access) {
71 "warning: ignoring xip option - "
72 "not supported by bdev");
77 void **kmem,
unsigned long *pfn)
83 rc = __ext2_get_block(mapping->
host, pgoff, create, &block);
88 rc = __inode_direct_access(mapping->
host, block, kmem, pfn);