Home
last modified time | relevance | path

Searched refs:phdr (Results 1 – 25 of 49) sorted by relevance

12

/linux/fs/
H A Dbinfmt_elf_fdpic.c141 struct elf_phdr *phdr; in elf_fdpic_fetch_phdrs() local
161 phdr = params->phdrs; in elf_fdpic_fetch_phdrs()
162 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) { in elf_fdpic_fetch_phdrs()
163 if (phdr->p_type != PT_GNU_STACK) in elf_fdpic_fetch_phdrs()
166 if (phdr->p_flags & PF_X) in elf_fdpic_fetch_phdrs()
171 params->stack_size = phdr->p_memsz; in elf_fdpic_fetch_phdrs()
186 struct elf_phdr *phdr; in load_elf_fdpic_binary() local
229 phdr = exec_params.phdrs; in load_elf_fdpic_binary()
231 for (i = 0; i < exec_params.hdr.e_phnum; i++, phdr++) { in load_elf_fdpic_binary()
232 switch (phdr->p_type) { in load_elf_fdpic_binary()
[all …]
H A Dbinfmt_elf.c463 static unsigned long total_mapping_size(const struct elf_phdr *phdr, int nr) in total_mapping_size() argument
471 if (phdr[i].p_type == PT_LOAD) { in total_mapping_size()
472 min_addr = min(min_addr, ELF_PAGESTART(phdr[i].p_vaddr)); in total_mapping_size()
473 max_addr = max(max_addr, phdr[i].p_vaddr + phdr[i].p_memsz); in total_mapping_size()
592 struct elf_phdr *phdr, in arch_elf_pt_proc() argument
775 static int parse_elf_properties(struct file *f, const struct elf_phdr *phdr, in parse_elf_properties() argument
789 if (!IS_ENABLED(CONFIG_ARCH_USE_GNU_PROPERTY) || !phdr) in parse_elf_properties()
793 if (WARN_ON_ONCE(phdr->p_type != PT_GNU_PROPERTY)) in parse_elf_properties()
797 if (phdr->p_filesz > sizeof(note)) in parse_elf_properties()
800 pos = phdr->p_offset; in parse_elf_properties()
[all …]
/linux/arch/s390/kernel/
H A Dkexec_elf.c21 const Elf_Phdr *phdr; in kexec_file_add_kernel_elf() local
34 phdr = (void *)ehdr + ehdr->e_phoff; in kexec_file_add_kernel_elf()
35 for (i = 0; i < ehdr->e_phnum; i++, phdr++) { in kexec_file_add_kernel_elf()
36 if (phdr->p_type != PT_LOAD) in kexec_file_add_kernel_elf()
39 buf.buffer = kernel + phdr->p_offset; in kexec_file_add_kernel_elf()
40 buf.bufsz = phdr->p_filesz; in kexec_file_add_kernel_elf()
42 buf.mem = ALIGN(phdr->p_paddr, phdr->p_align); in kexec_file_add_kernel_elf()
47 buf.memsz = phdr->p_memsz; in kexec_file_add_kernel_elf()
48 data->memsz = ALIGN(data->memsz, phdr->p_align) + buf.memsz; in kexec_file_add_kernel_elf()
50 if (entry - phdr->p_paddr < phdr->p_memsz) { in kexec_file_add_kernel_elf()
[all …]
H A Dcrash_dump.c494 static void fill_ptload(Elf64_Phdr *phdr, unsigned long paddr, in fill_ptload() argument
497 phdr->p_type = PT_LOAD; in fill_ptload()
498 phdr->p_vaddr = vaddr; in fill_ptload()
499 phdr->p_offset = paddr; in fill_ptload()
500 phdr->p_paddr = paddr; in fill_ptload()
501 phdr->p_filesz = size; in fill_ptload()
502 phdr->p_memsz = size; in fill_ptload()
503 phdr->p_flags = PF_R | PF_W | PF_X; in fill_ptload()
504 phdr->p_align = PAGE_SIZE; in fill_ptload()
510 static void loads_init(Elf64_Phdr *phdr, bool os_info_has_vm) in loads_init() argument
[all …]
/linux/arch/riscv/kernel/
H A Dkexec_elf.c32 const struct elf_phdr *phdr; in riscv_kexec_elf_load() local
37 phdr = &elf_info->proghdrs[i]; in riscv_kexec_elf_load()
38 if (phdr->p_type != PT_LOAD) in riscv_kexec_elf_load()
41 size = phdr->p_filesz; in riscv_kexec_elf_load()
42 if (size > phdr->p_memsz) in riscv_kexec_elf_load()
43 size = phdr->p_memsz; in riscv_kexec_elf_load()
45 kbuf.buffer = (void *) elf_info->buffer + phdr->p_offset; in riscv_kexec_elf_load()
47 kbuf.buf_align = phdr->p_align; in riscv_kexec_elf_load()
48 kbuf.mem = phdr->p_paddr - old_pbase + new_pbase; in riscv_kexec_elf_load()
49 kbuf.memsz = phdr->p_memsz; in riscv_kexec_elf_load()
[all …]
/linux/tools/testing/selftests/kvm/lib/
H A Delf.c148 Elf64_Phdr phdr; in kvm_vm_elf_load() local
149 test_read(fd, &phdr, sizeof(phdr)); in kvm_vm_elf_load()
152 if (phdr.p_type != PT_LOAD) in kvm_vm_elf_load()
156 TEST_ASSERT(phdr.p_memsz > 0, "Unexpected loadable segment " in kvm_vm_elf_load()
159 n1, (u64)phdr.p_memsz); in kvm_vm_elf_load()
160 gva_t seg_vstart = align_down(phdr.p_vaddr, vm->page_size); in kvm_vm_elf_load()
161 gva_t seg_vend = phdr.p_vaddr + phdr.p_memsz - 1; in kvm_vm_elf_load()
180 if (phdr.p_filesz) { in kvm_vm_elf_load()
181 offset_rv = lseek(fd, phdr.p_offset, SEEK_SET); in kvm_vm_elf_load()
182 TEST_ASSERT(offset_rv == phdr.p_offset, in kvm_vm_elf_load()
[all …]
/linux/arch/loongarch/kernel/
H A Dkexec_elf.c29 const struct elf_phdr *phdr; in _elf_kexec_load() local
31 phdr = &elf_info->proghdrs[i]; in _elf_kexec_load()
32 if (phdr->p_type != PT_LOAD) in _elf_kexec_load()
35 size = phdr->p_filesz; in _elf_kexec_load()
36 if (size > phdr->p_memsz) in _elf_kexec_load()
37 size = phdr->p_memsz; in _elf_kexec_load()
39 kbuf->buffer = (void *)elf_info->buffer + phdr->p_offset; in _elf_kexec_load()
41 kbuf->buf_align = phdr->p_align; in _elf_kexec_load()
42 *text_offset = __pa(phdr->p_paddr); in _elf_kexec_load()
44 kbuf->memsz = ALIGN(phdr->p_memsz, SZ_64K); in _elf_kexec_load()
/linux/drivers/soc/qcom/
H A Dsmem.c292 phdr_to_last_uncached_entry(struct smem_partition_header *phdr) in phdr_to_last_uncached_entry() argument
294 void *p = phdr; in phdr_to_last_uncached_entry()
296 return p + le32_to_cpu(phdr->offset_free_uncached); in phdr_to_last_uncached_entry()
300 phdr_to_first_cached_entry(struct smem_partition_header *phdr, in phdr_to_first_cached_entry() argument
303 void *p = phdr; in phdr_to_first_cached_entry()
306 return p + le32_to_cpu(phdr->size) - ALIGN(sizeof(*e), cacheline); in phdr_to_first_cached_entry()
310 phdr_to_last_cached_entry(struct smem_partition_header *phdr) in phdr_to_last_cached_entry() argument
312 void *p = phdr; in phdr_to_last_cached_entry()
314 return p + le32_to_cpu(phdr->offset_free_cached); in phdr_to_last_cached_entry()
318 phdr_to_first_uncached_entry(struct smem_partition_header *phdr) in phdr_to_first_uncached_entry() argument
[all …]
/linux/drivers/media/usb/siano/
H A Dsmsusb.c98 struct sms_msg_hdr *phdr = (struct sms_msg_hdr *)surb->cb->p; in smsusb_onresponse() local
100 smsendian_handle_message_header(phdr); in smsusb_onresponse()
101 if (urb->actual_length >= phdr->msg_length) { in smsusb_onresponse()
102 surb->cb->size = phdr->msg_length; in smsusb_onresponse()
105 (phdr->msg_flags & MSG_HDR_FLAG_SPLIT_MSG)) { in smsusb_onresponse()
109 ((phdr->msg_flags >> 8) & 3); in smsusb_onresponse()
112 if (((int) phdr->msg_length + in smsusb_onresponse()
115 phdr->msg_length, in smsusb_onresponse()
123 memcpy((char *) phdr + surb->cb->offset, in smsusb_onresponse()
124 phdr, sizeof(struct sms_msg_hdr)); in smsusb_onresponse()
[all …]
/linux/drivers/media/common/siano/
H A Dsmsendian.c87 struct sms_msg_hdr *phdr = (struct sms_msg_hdr *)msg; in smsendian_handle_message_header() local
89 phdr->msg_type = le16_to_cpu((__force __le16)phdr->msg_type); in smsendian_handle_message_header()
90 phdr->msg_length = le16_to_cpu((__force __le16)phdr->msg_length); in smsendian_handle_message_header()
91 phdr->msg_flags = le16_to_cpu((__force __le16)phdr->msg_flags); in smsendian_handle_message_header()
/linux/drivers/remoteproc/
H A Dremoteproc_elf_helpers.h70 ELF_GEN_FIELD_GET_SET(phdr, p_paddr, u64) in ELF_GEN_FIELD_GET_SET()
71 ELF_GEN_FIELD_GET_SET(phdr, p_vaddr, u64) in ELF_GEN_FIELD_GET_SET()
72 ELF_GEN_FIELD_GET_SET(phdr, p_filesz, u64) in ELF_GEN_FIELD_GET_SET()
73 ELF_GEN_FIELD_GET_SET(phdr, p_memsz, u64) in ELF_GEN_FIELD_GET_SET()
74 ELF_GEN_FIELD_GET_SET(phdr, p_type, u32) in ELF_GEN_FIELD_GET_SET()
75 ELF_GEN_FIELD_GET_SET(phdr, p_offset, u64) in ELF_GEN_FIELD_GET_SET()
76 ELF_GEN_FIELD_GET_SET(phdr, p_flags, u32) in ELF_GEN_FIELD_GET_SET()
77 ELF_GEN_FIELD_GET_SET(phdr, p_align, u64) in ELF_GEN_FIELD_GET_SET()
97 ELF_STRUCT_SIZE(phdr)
H A Dremoteproc_coredump.c238 void *phdr; in rproc_coredump() local
290 phdr = data + elf_hdr_get_e_phoff(class, ehdr); in rproc_coredump()
295 memset(phdr, 0, elf_size_of_phdr(class)); in rproc_coredump()
296 elf_phdr_set_p_type(class, phdr, PT_LOAD); in rproc_coredump()
297 elf_phdr_set_p_offset(class, phdr, offset); in rproc_coredump()
298 elf_phdr_set_p_vaddr(class, phdr, segment->da); in rproc_coredump()
299 elf_phdr_set_p_paddr(class, phdr, segment->da); in rproc_coredump()
300 elf_phdr_set_p_filesz(class, phdr, segment->size); in rproc_coredump()
301 elf_phdr_set_p_memsz(class, phdr, segment->size); in rproc_coredump()
302 elf_phdr_set_p_flags(class, phdr, PF_R | PF_W | PF_X); in rproc_coredump()
[all …]
H A Dremoteproc_elf_loader.c163 const void *ehdr, *phdr; local
172 phdr = elf_data + elf_hdr_get_e_phoff(class, ehdr);
175 for (i = 0; i < phnum; i++, phdr += elf_phdr_get_size) {
176 u64 da = elf_phdr_get_p_paddr(class, phdr);
177 u64 memsz = elf_phdr_get_p_memsz(class, phdr);
178 u64 filesz = elf_phdr_get_p_filesz(class, phdr);
179 u64 offset = elf_phdr_get_p_offset(class, phdr);
180 u32 type = elf_phdr_get_p_type(class, phdr);
/linux/tools/testing/selftests/sgx/
H A Dload.c235 Elf64_Phdr *phdr = &phdr_tbl[i]; in encl_load() local
237 if (phdr->p_type == PT_LOAD) in encl_load()
247 Elf64_Phdr *phdr = &phdr_tbl[i]; in encl_load() local
248 unsigned int flags = phdr->p_flags; in encl_load()
250 if (phdr->p_type != PT_LOAD) in encl_load()
258 phdr->p_flags); in encl_load()
265 phdr->p_flags); in encl_load()
270 src_offset = phdr->p_offset & PAGE_MASK; in encl_load()
276 seg->prot = (phdr->p_flags & PF_R) ? PROT_READ : 0; in encl_load()
277 seg->prot |= (phdr->p_flags & PF_W) ? PROT_WRITE : 0; in encl_load()
[all …]
/linux/net/dsa/
H A Dtag_qca.c17 __be16 *phdr; in qca_tag_xmit() local
23 phdr = dsa_etype_header_pos_tx(skb); in qca_tag_xmit()
30 *phdr = htons(hdr); in qca_tag_xmit()
41 __be16 *phdr; in qca_tag_rcv() local
52 phdr = dsa_etype_header_pos_rx(skb); in qca_tag_rcv()
53 hdr = ntohs(*phdr); in qca_tag_rcv()
H A Dtag_mtk.c73 __be16 *phdr; in mtk_tag_rcv()
78 phdr = dsa_etype_header_pos_rx(skb); in mtk_tag_rcv()
79 hdr = ntohs(*phdr); in mtk_tag_rcv()
72 __be16 *phdr; mtk_tag_rcv() local
H A Dtag_ar9331.c33 __le16 *phdr; in ar9331_tag_xmit() local
36 phdr = skb_push(skb, AR9331_HDR_LEN); in ar9331_tag_xmit()
43 phdr[0] = cpu_to_le16(hdr); in ar9331_tag_xmit()
/linux/lib/
H A Dbuildid.c209 const Elf32_Phdr *phdr; in get_build_id_32() local
229 phdr = freader_fetch(r, phoff + i * sizeof(Elf32_Phdr), sizeof(Elf32_Phdr)); in get_build_id_32()
230 if (!phdr) in get_build_id_32()
233 if (phdr->p_type == PT_NOTE && in get_build_id_32()
234 !parse_build_id(r, build_id, size, READ_ONCE(phdr->p_offset), in get_build_id_32()
235 READ_ONCE(phdr->p_filesz))) in get_build_id_32()
245 const Elf64_Phdr *phdr; in get_build_id_64() local
266 phdr = freader_fetch(r, phoff + i * sizeof(Elf64_Phdr), sizeof(Elf64_Phdr)); in get_build_id_64()
267 if (!phdr) in get_build_id_64()
270 if (phdr->p_type == PT_NOTE && in get_build_id_64()
[all …]
/linux/arch/x86/boot/compressed/
H A Dmisc.c285 Elf64_Phdr *phdrs, *phdr; in parse_elf() local
288 Elf32_Phdr *phdrs, *phdr; in parse_elf()
309 phdr = &phdrs[i]; in parse_elf()
311 switch (phdr->p_type) { in parse_elf()
314 if ((phdr->p_align % 0x200000) != 0) in parse_elf()
319 dest += (phdr->p_paddr - LOAD_PHYSICAL_ADDR); in parse_elf()
321 dest = (void *)(phdr->p_paddr); in parse_elf()
323 memmove(dest, output + phdr->p_offset, phdr->p_filesz); in parse_elf()
/linux/tools/perf/util/
H A Dgenelf.c191 Elf_Phdr *phdr; in jit_write_elf() local
230 phdr = elf_newphdr(e, 1); in jit_write_elf()
231 phdr[0].p_type = PT_LOAD; in jit_write_elf()
232 phdr[0].p_offset = GEN_ELF_TEXT_OFFSET; in jit_write_elf()
233 phdr[0].p_vaddr = GEN_ELF_TEXT_OFFSET; in jit_write_elf()
234 phdr[0].p_paddr = GEN_ELF_TEXT_OFFSET; in jit_write_elf()
235 phdr[0].p_filesz = csize; in jit_write_elf()
236 phdr[0].p_memsz = csize; in jit_write_elf()
237 phdr[0].p_flags = PF_X | PF_R; in jit_write_elf()
238 phdr[0].p_align = 8; in jit_write_elf()
H A Dsymbol-minimal.c102 void *phdr, *buf = NULL; in filename__read_build_id() local
149 phdr = malloc(phdr_size); in filename__read_build_id()
150 if (phdr == NULL) in filename__read_build_id()
154 if (read(fd, phdr, phdr_size) != phdr_size) in filename__read_build_id()
158 hdrs.phdr32 = phdr; in filename__read_build_id()
160 hdrs.phdr64 = phdr; in filename__read_build_id()
201 free(phdr); in filename__read_build_id()
/linux/fs/proc/
H A Dkcore.c383 struct elf_phdr *phdrs, *phdr; in read_kcore_iter() local
395 phdr = &phdrs[1]; in read_kcore_iter()
397 phdr->p_type = PT_LOAD; in read_kcore_iter()
398 phdr->p_flags = PF_R | PF_W | PF_X; in read_kcore_iter()
399 phdr->p_offset = kc_vaddr_to_offset(m->addr) in read_kcore_iter()
401 phdr->p_vaddr = (size_t)m->addr; in read_kcore_iter()
403 phdr->p_paddr = __pa(m->addr); in read_kcore_iter()
405 phdr->p_paddr = __pa_symbol(m->addr); in read_kcore_iter()
407 phdr->p_paddr = (elf_addr_t)-1; in read_kcore_iter()
408 phdr->p_filesz = phdr->p_memsz = m->size; in read_kcore_iter()
[all …]
/linux/drivers/net/wireless/broadcom/brcm80211/brcmsmac/
H A Dd11.h677 #define D11A_PHY_HDR_GRATE(phdr) ((phdr)->rlpt[0] & 0x0f) argument
678 #define D11A_PHY_HDR_GRES(phdr) (((phdr)->rlpt[0] >> 4) & 0x01) argument
679 #define D11A_PHY_HDR_GLENGTH(phdr) (((u32 *)((phdr)->rlpt) >> 5) & 0x0fff) argument
680 #define D11A_PHY_HDR_GPARITY(phdr) (((phdr)->rlpt[3] >> 1) & 0x01) argument
681 #define D11A_PHY_HDR_GTAIL(phdr) (((phdr)->rlpt[3] >> 2) & 0x3f) argument
684 #define D11A_PHY_HDR_SRATE(phdr, rate) \ argument
685 ((phdr)->rlpt[0] = ((phdr)->rlpt[0] & 0xf0) | ((rate) & 0xf))
687 #define D11A_PHY_HDR_SRES(phdr) ((phdr)->rlpt[0] &= 0xef) argument
689 #define D11A_PHY_HDR_SLENGTH(phdr, length) \ argument
690 (*(u32 *)((phdr)->rlpt) = *(u32 *)((phdr)->rlpt) | \
[all …]
/linux/arch/mips/kernel/
H A Dvpe.c698 struct elf_phdr *phdr = (struct elf_phdr *) in vpe_elfload() local
702 if (phdr->p_type == PT_LOAD) { in vpe_elfload()
703 memcpy((void *)phdr->p_paddr, in vpe_elfload()
704 (char *)hdr + phdr->p_offset, in vpe_elfload()
705 phdr->p_filesz); in vpe_elfload()
706 memset((void *)phdr->p_paddr + phdr->p_filesz, in vpe_elfload()
707 0, phdr->p_memsz - phdr->p_filesz); in vpe_elfload()
709 phdr++; in vpe_elfload()
/linux/drivers/scsi/qla4xxx/
H A Dql4_83xx.c604 uint8_t *phdr; in qla4_83xx_dump_reset_seq_hdr() local
612 phdr = ha->reset_tmplt.buff; in qla4_83xx_dump_reset_seq_hdr()
616 *phdr, *(phdr+1), *(phdr+2), *(phdr+3), *(phdr+4), in qla4_83xx_dump_reset_seq_hdr()
617 *(phdr+5), *(phdr+6), *(phdr+7), *(phdr + 8), in qla4_83xx_dump_reset_seq_hdr()
618 *(phdr+9), *(phdr+10), *(phdr+11), *(phdr+12), in qla4_83xx_dump_reset_seq_hdr()
619 *(phdr+13), *(phdr+14), *(phdr+15))); in qla4_83xx_dump_reset_seq_hdr()

12