Home
last modified time | relevance | path

Searched refs:reloc (Results 1 – 25 of 58) sorted by relevance

123

/linux-6.1.9/tools/objtool/
Delf.c251 struct reloc *find_reloc_by_dest_range(const struct elf *elf, struct section *sec, in find_reloc_by_dest_range()
254 struct reloc *reloc, *r = NULL; in find_reloc_by_dest_range() local
257 if (!sec->reloc) in find_reloc_by_dest_range()
260 sec = sec->reloc; in find_reloc_by_dest_range()
263 elf_hash_for_each_possible(reloc, reloc, hash, in find_reloc_by_dest_range()
265 if (reloc->sec != sec) in find_reloc_by_dest_range()
268 if (reloc->offset >= offset && reloc->offset < offset + len) { in find_reloc_by_dest_range()
269 if (!r || reloc->offset < r->offset) in find_reloc_by_dest_range()
270 r = reloc; in find_reloc_by_dest_range()
280 struct reloc *find_reloc_by_dest(const struct elf *elf, struct section *sec, unsigned long offset) in find_reloc_by_dest()
[all …]
Dcheck.c461 struct reloc *rel; in add_pv_ops()
549 struct reloc *reloc; in add_dead_ends() local
559 list_for_each_entry(reloc, &sec->reloc_list, list) { in add_dead_ends()
560 if (reloc->sym->type != STT_SECTION) { in add_dead_ends()
564 insn = find_insn(file, reloc->sym->sec, reloc->addend); in add_dead_ends()
567 else if (reloc->addend == reloc->sym->sec->sh.sh_size) { in add_dead_ends()
568 insn = find_last_insn(file, reloc->sym->sec); in add_dead_ends()
571 reloc->sym->sec->name, reloc->addend); in add_dead_ends()
576 reloc->sym->sec->name, reloc->addend); in add_dead_ends()
594 list_for_each_entry(reloc, &sec->reloc_list, list) { in add_dead_ends()
[all …]
Dspecial.c61 static void reloc_to_sec_off(struct reloc *reloc, struct section **sec, in reloc_to_sec_off() argument
64 *sec = reloc->sym->sec; in reloc_to_sec_off()
65 *off = reloc->sym->offset + reloc->addend; in reloc_to_sec_off()
72 struct reloc *orig_reloc, *new_reloc; in get_alt_entry()
120 struct reloc *key_reloc; in get_alt_entry()
/linux-6.1.9/drivers/gpu/drm/radeon/
Dr600_cs.c969 struct radeon_bo_list *reloc; in r600_cs_check_reg() local
1014 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r600_cs_check_reg()
1020 ib[idx] += (u32)((reloc->gpu_offset >> 8) & 0xffffffff); in r600_cs_check_reg()
1032 r = radeon_cs_packet_next_reloc(p, &reloc, r600_nomm); in r600_cs_check_reg()
1041 if (reloc->tiling_flags & RADEON_TILING_MACRO) { in r600_cs_check_reg()
1074 r = radeon_cs_packet_next_reloc(p, &reloc, r600_nomm); in r600_cs_check_reg()
1082 ib[idx] += (u32)((reloc->gpu_offset >> 8) & 0xffffffff); in r600_cs_check_reg()
1083 track->vgt_strmout_bo[tmp] = reloc->robj; in r600_cs_check_reg()
1084 track->vgt_strmout_bo_mc[tmp] = reloc->gpu_offset; in r600_cs_check_reg()
1097 r = radeon_cs_packet_next_reloc(p, &reloc, r600_nomm); in r600_cs_check_reg()
[all …]
Dr200.c149 struct radeon_bo_list *reloc; in r200_packet0_check() local
181 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r200_packet0_check()
188 track->zb.robj = reloc->robj; in r200_packet0_check()
191 ib[idx] = idx_value + ((u32)reloc->gpu_offset); in r200_packet0_check()
194 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r200_packet0_check()
201 track->cb[0].robj = reloc->robj; in r200_packet0_check()
204 ib[idx] = idx_value + ((u32)reloc->gpu_offset); in r200_packet0_check()
213 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r200_packet0_check()
221 if (reloc->tiling_flags & RADEON_TILING_MACRO) in r200_packet0_check()
223 if (reloc->tiling_flags & RADEON_TILING_MICRO) in r200_packet0_check()
[all …]
Devergreen_cs.c1096 struct radeon_bo_list *reloc; in evergreen_cs_handle_reg() local
1142 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in evergreen_cs_handle_reg()
1148 ib[idx] += (u32)((reloc->gpu_offset >> 8) & 0xffffffff); in evergreen_cs_handle_reg()
1171 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in evergreen_cs_handle_reg()
1179 ib[idx] |= Z_ARRAY_MODE(evergreen_cs_get_aray_mode(reloc->tiling_flags)); in evergreen_cs_handle_reg()
1180 track->db_z_info |= Z_ARRAY_MODE(evergreen_cs_get_aray_mode(reloc->tiling_flags)); in evergreen_cs_handle_reg()
1181 if (reloc->tiling_flags & RADEON_TILING_MACRO) { in evergreen_cs_handle_reg()
1184 evergreen_tiling_fields(reloc->tiling_flags, in evergreen_cs_handle_reg()
1213 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in evergreen_cs_handle_reg()
1220 ib[idx] += (u32)((reloc->gpu_offset >> 8) & 0xffffffff); in evergreen_cs_handle_reg()
[all …]
Dr300.c630 struct radeon_bo_list *reloc; in r300_packet0_check() local
664 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r300_packet0_check()
671 track->cb[i].robj = reloc->robj; in r300_packet0_check()
674 ib[idx] = idx_value + ((u32)reloc->gpu_offset); in r300_packet0_check()
677 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r300_packet0_check()
684 track->zb.robj = reloc->robj; in r300_packet0_check()
687 ib[idx] = idx_value + ((u32)reloc->gpu_offset); in r300_packet0_check()
706 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r300_packet0_check()
716 ((idx_value & ~31) + (u32)reloc->gpu_offset); in r300_packet0_check()
718 if (reloc->tiling_flags & RADEON_TILING_MACRO) in r300_packet0_check()
[all …]
Dr100.c1275 struct radeon_bo_list *reloc; in r100_reloc_pitch_offset() local
1278 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r100_reloc_pitch_offset()
1288 tmp += (((u32)reloc->gpu_offset) >> 10); in r100_reloc_pitch_offset()
1291 if (reloc->tiling_flags & RADEON_TILING_MACRO) in r100_reloc_pitch_offset()
1293 if (reloc->tiling_flags & RADEON_TILING_MICRO) { in r100_reloc_pitch_offset()
1314 struct radeon_bo_list *reloc; in r100_packet3_load_vbpntr() local
1331 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r100_packet3_load_vbpntr()
1339 ib[idx+1] = radeon_get_ib_value(p, idx + 1) + ((u32)reloc->gpu_offset); in r100_packet3_load_vbpntr()
1342 track->arrays[i + 0].robj = reloc->robj; in r100_packet3_load_vbpntr()
1344 r = radeon_cs_packet_next_reloc(p, &reloc, 0); in r100_packet3_load_vbpntr()
[all …]
/linux-6.1.9/tools/objtool/include/objtool/
Delf.h36 struct section *base, *reloc; member
66 struct reloc { struct
130 static inline u32 reloc_hash(struct reloc *reloc) in reloc_hash() argument
132 return sec_offset_hash(reloc->sec, reloc->offset); in reloc_hash()
157 int elf_write_reloc(struct elf *elf, struct reloc *reloc);
167 struct reloc *find_reloc_by_dest(const struct elf *elf, struct section *sec, unsigned long offset);
168 struct reloc *find_reloc_by_dest_range(const struct elf *elf, struct section *sec,
Dspecial.h39 struct reloc *reloc);
40 struct reloc *arch_find_switch_table(struct objtool_file *file,
Dcheck.h67 struct reloc *jump_table;
68 struct reloc *reloc; member
/linux-6.1.9/arch/x86/boot/compressed/
Dmisc.c188 int *reloc; in handle_relocations() local
241 for (reloc = output + output_len - sizeof(*reloc); *reloc; reloc--) { in handle_relocations()
242 long extended = *reloc; in handle_relocations()
252 while (*--reloc) { in handle_relocations()
253 long extended = *reloc; in handle_relocations()
262 for (reloc--; *reloc; reloc--) { in handle_relocations()
263 long extended = *reloc; in handle_relocations()
/linux-6.1.9/drivers/gpu/drm/qxl/
Dqxl_ioctl.c206 struct drm_qxl_reloc reloc; in qxl_process_single_command() local
209 if (copy_from_user(&reloc, u + i, sizeof(reloc))) { in qxl_process_single_command()
216 if (reloc.reloc_type != QXL_RELOC_TYPE_BO && reloc.reloc_type != QXL_RELOC_TYPE_SURF) { in qxl_process_single_command()
217 DRM_DEBUG("unknown reloc type %d\n", reloc.reloc_type); in qxl_process_single_command()
222 reloc_info[i].type = reloc.reloc_type; in qxl_process_single_command()
224 if (reloc.dst_handle) { in qxl_process_single_command()
225 ret = qxlhw_handle_to_bo(file_priv, reloc.dst_handle, release, in qxl_process_single_command()
229 reloc_info[i].dst_offset = reloc.dst_offset; in qxl_process_single_command()
232 reloc_info[i].dst_offset = reloc.dst_offset + release->release_offset; in qxl_process_single_command()
237 if (reloc.reloc_type == QXL_RELOC_TYPE_BO || reloc.src_handle) { in qxl_process_single_command()
[all …]
/linux-6.1.9/drivers/gpu/host1x/
Djob.c147 struct host1x_reloc *reloc = &job->relocs[i]; in pin_job() local
152 reloc->target.bo = host1x_bo_get(reloc->target.bo); in pin_job()
153 if (!reloc->target.bo) { in pin_job()
158 bo = reloc->target.bo; in pin_job()
160 switch (reloc->flags & mask) { in pin_job()
281 struct host1x_reloc *reloc = &job->relocs[i]; in do_relocs() local
283 reloc->target.offset) >> reloc->shift; in do_relocs()
287 if (cmdbuf != reloc->cmdbuf.bo) in do_relocs()
292 reloc->cmdbuf.offset / sizeof(u32) + in do_relocs()
306 target = cmdbuf_addr + reloc->cmdbuf.offset; in do_relocs()
[all …]
/linux-6.1.9/tools/objtool/arch/x86/
Dspecial.c43 struct reloc *reloc) in arch_support_alt_relocation() argument
94 struct reloc *arch_find_switch_table(struct objtool_file *file, in arch_find_switch_table()
97 struct reloc *text_reloc, *rodata_reloc; in arch_find_switch_table()
/linux-6.1.9/arch/parisc/kernel/
Dkexec.c74 void (*reloc)(unsigned long head, in machine_kexec() local
87 reloc = (void *)&desc; in machine_kexec()
90 reloc = (void *)virt; in machine_kexec()
105 reloc(image->head & PAGE_MASK, image->start, phys); in machine_kexec()
/linux-6.1.9/fs/isofs/
Drock.c315 struct inode *reloc; in parse_rock_ridge_inode_internal() local
524 reloc = isofs_iget_reloc(inode->i_sb, reloc_block, 0); in parse_rock_ridge_inode_internal()
525 if (IS_ERR(reloc)) { in parse_rock_ridge_inode_internal()
526 ret = PTR_ERR(reloc); in parse_rock_ridge_inode_internal()
529 inode->i_mode = reloc->i_mode; in parse_rock_ridge_inode_internal()
530 set_nlink(inode, reloc->i_nlink); in parse_rock_ridge_inode_internal()
531 inode->i_uid = reloc->i_uid; in parse_rock_ridge_inode_internal()
532 inode->i_gid = reloc->i_gid; in parse_rock_ridge_inode_internal()
533 inode->i_rdev = reloc->i_rdev; in parse_rock_ridge_inode_internal()
534 inode->i_size = reloc->i_size; in parse_rock_ridge_inode_internal()
[all …]
/linux-6.1.9/Documentation/devicetree/bindings/remoteproc/
Dqcom,pil-info.yaml19 const: qcom,pil-reloc-info
41 pil-reloc@94c {
42 compatible = "qcom,pil-reloc-info";
/linux-6.1.9/scripts/
Dcheck_extable.sh42 eval $(echo $reloc | sed 's/\([^+]\+\)+\?\(0x[0-9a-f]\+\)\?/symbol="\1"; symbol_offset="\2"/')
109 for reloc in ${suspicious_relocs}; do
112 find_symbol_and_offset_from_reloc ${reloc}
/linux-6.1.9/arch/arm64/kvm/hyp/nvhe/
DMakefile39 targets += $(hyp-obj) kvm_nvhe.tmp.o kvm_nvhe.rel.o hyp.lds hyp-reloc.S hyp-reloc.o
66 $(obj)/hyp-reloc.S: $(obj)/kvm_nvhe.tmp.o $(obj)/gen-hyprel FORCE
74 $(obj)/kvm_nvhe.rel.o: $(obj)/kvm_nvhe.tmp.o $(obj)/hyp-reloc.o FORCE
/linux-6.1.9/Documentation/devicetree/bindings/sram/
Dqcom,imem.yaml46 "^pil-reloc@[0-9a-f]+$":
70 pil-reloc@94c {
71 compatible = "qcom,pil-reloc-info";
/linux-6.1.9/fs/
Dbinfmt_flat.c348 ptr = (unsigned long __user *)(current->mm->start_code + r.reloc.offset); in old_reloc()
350 ptr = (unsigned long __user *)(current->mm->start_data + r.reloc.offset); in old_reloc()
356 r.reloc.offset, ptr, val, segment[r.reloc.type]); in old_reloc()
358 switch (r.reloc.type) { in old_reloc()
369 pr_err("Unknown relocation type=%x\n", r.reloc.type); in old_reloc()
411 __be32 __user *reloc; in load_flat_file() local
584 reloc = (__be32 __user *) in load_flat_file()
610 reloc = (__be32 __user *) in load_flat_file()
781 if (get_user(tmp, reloc + i)) in load_flat_file()
824 if (get_user(relval, reloc + i)) in load_flat_file()
/linux-6.1.9/drivers/gpu/drm/i915/gt/
Dintel_renderstate.h18 const u32 *reloc; member
25 .reloc = gen ## _g ## _null_state_relocs, \
/linux-6.1.9/drivers/gpu/drm/i915/gem/
Di915_gem_execbuffer.c1102 relocation_target(const struct drm_i915_gem_relocation_entry *reloc, in relocation_target() argument
1105 return gen8_canonical_addr((int)reloc->delta + target->node.start); in relocation_target()
1379 const struct drm_i915_gem_relocation_entry *reloc, in relocate_entry() argument
1383 u64 target_addr = relocation_target(reloc, target); in relocate_entry()
1384 u64 offset = reloc->offset; in relocate_entry()
1412 const struct drm_i915_gem_relocation_entry *reloc) in eb_relocate_entry() argument
1419 target = eb_get_vma(eb, reloc->target_handle); in eb_relocate_entry()
1424 if (unlikely(reloc->write_domain & (reloc->write_domain - 1))) { in eb_relocate_entry()
1428 reloc->target_handle, in eb_relocate_entry()
1429 (int) reloc->offset, in eb_relocate_entry()
[all …]
/linux-6.1.9/drivers/gpu/drm/nouveau/
Dnouveau_gem.c645 struct drm_nouveau_gem_pushbuf_reloc *reloc, in nouveau_gem_pushbuf_reloc_apply() argument
652 struct drm_nouveau_gem_pushbuf_reloc *r = &reloc[i]; in nouveau_gem_pushbuf_reloc_apply()
728 struct drm_nouveau_gem_pushbuf_reloc *reloc = NULL; in nouveau_gem_ioctl_pushbuf() local
807 if (!reloc) { in nouveau_gem_ioctl_pushbuf()
809 reloc = u_memcpya(req->relocs, req->nr_relocs, sizeof(*reloc)); in nouveau_gem_ioctl_pushbuf()
810 if (IS_ERR(reloc)) { in nouveau_gem_ioctl_pushbuf()
811 ret = PTR_ERR(reloc); in nouveau_gem_ioctl_pushbuf()
818 ret = nouveau_gem_pushbuf_reloc_apply(cli, req, reloc, bo); in nouveau_gem_ioctl_pushbuf()
926 if (!IS_ERR(reloc)) in nouveau_gem_ioctl_pushbuf()
927 u_free(reloc); in nouveau_gem_ioctl_pushbuf()

123