Lines Matching refs:inode
62 struct inode *inode; /* Also hold a ref to inode */ member
345 file_inode(vma->vm_file) == uprobe->inode && in valid_ref_ctr_vma()
409 d > 0 ? "increment" : "decrement", uprobe->inode->i_ino, in update_ref_ctr_warn()
615 int uprobe_cmp(const struct inode *l_inode, const loff_t l_offset, in uprobe_cmp()
618 if (l_inode < r->inode) in uprobe_cmp()
621 if (l_inode > r->inode) in uprobe_cmp()
637 struct inode *inode; member
644 return uprobe_cmp(a->inode, a->offset, __node_2_uprobe(b)); in __uprobe_cmp_key()
650 return uprobe_cmp(u->inode, u->offset, __node_2_uprobe(b)); in __uprobe_cmp()
653 static struct uprobe *__find_uprobe(struct inode *inode, loff_t offset) in __find_uprobe() argument
656 .inode = inode, in __find_uprobe()
671 static struct uprobe *find_uprobe(struct inode *inode, loff_t offset) in find_uprobe() argument
676 uprobe = __find_uprobe(inode, offset); in find_uprobe()
719 uprobe->inode->i_ino, (unsigned long long) uprobe->offset, in ref_ctr_mismatch_warn()
724 static struct uprobe *alloc_uprobe(struct inode *inode, loff_t offset, in alloc_uprobe() argument
733 uprobe->inode = inode; in alloc_uprobe()
811 struct address_space *mapping = uprobe->inode->i_mapping; in copy_insn()
819 if (offs >= i_size_read(uprobe->inode)) in copy_insn()
1039 info = build_map_info(uprobe->inode->i_mapping, in register_for_each_vma()
1056 file_inode(vma->vm_file) != uprobe->inode) in register_for_each_vma()
1105 void uprobe_unregister(struct inode *inode, loff_t offset, struct uprobe_consumer *uc) in uprobe_unregister() argument
1109 uprobe = find_uprobe(inode, offset); in uprobe_unregister()
1138 static int __uprobe_register(struct inode *inode, loff_t offset, in __uprobe_register() argument
1149 if (!inode->i_mapping->a_ops->read_folio && in __uprobe_register()
1150 !shmem_mapping(inode->i_mapping)) in __uprobe_register()
1153 if (offset > i_size_read(inode)) in __uprobe_register()
1166 uprobe = alloc_uprobe(inode, offset, ref_ctr_offset); in __uprobe_register()
1192 int uprobe_register(struct inode *inode, loff_t offset, in uprobe_register() argument
1195 return __uprobe_register(inode, offset, 0, uc); in uprobe_register()
1199 int uprobe_register_refctr(struct inode *inode, loff_t offset, in uprobe_register_refctr() argument
1202 return __uprobe_register(inode, offset, ref_ctr_offset, uc); in uprobe_register_refctr()
1213 int uprobe_apply(struct inode *inode, loff_t offset, in uprobe_apply() argument
1220 uprobe = find_uprobe(inode, offset); in uprobe_apply()
1247 file_inode(vma->vm_file) != uprobe->inode) in unapply_uprobe()
1264 find_node_in_range(struct inode *inode, loff_t min, loff_t max) in find_node_in_range() argument
1271 if (inode < u->inode) { in find_node_in_range()
1273 } else if (inode > u->inode) { in find_node_in_range()
1291 static void build_probe_list(struct inode *inode, in build_probe_list() argument
1305 n = find_node_in_range(inode, min, max); in build_probe_list()
1309 if (u->inode != inode || u->offset < min) in build_probe_list()
1316 if (u->inode != inode || u->offset > max) in build_probe_list()
1364 struct inode *inode; in uprobe_mmap() local
1377 inode = file_inode(vma->vm_file); in uprobe_mmap()
1378 if (!inode) in uprobe_mmap()
1381 mutex_lock(uprobes_mmap_hash(inode)); in uprobe_mmap()
1382 build_probe_list(inode, vma, vma->vm_start, vma->vm_end, &tmp_list); in uprobe_mmap()
1396 mutex_unlock(uprobes_mmap_hash(inode)); in uprobe_mmap()
1405 struct inode *inode; in vma_has_uprobes() local
1408 inode = file_inode(vma->vm_file); in vma_has_uprobes()
1414 n = find_node_in_range(inode, min, max); in vma_has_uprobes()
2053 struct inode *inode = file_inode(vma->vm_file); in find_active_uprobe() local
2056 uprobe = find_uprobe(inode, offset); in find_active_uprobe()