Lines Matching refs:class

114 int rproc_coredump_set_elf_info(struct rproc *rproc, u8 class, u16 machine)  in rproc_coredump_set_elf_info()  argument
116 if (class != ELFCLASS64 && class != ELFCLASS32) in rproc_coredump_set_elf_info()
119 rproc->elf_class = class; in rproc_coredump_set_elf_info()
243 u8 class = rproc->elf_class; in rproc_coredump() local
252 if (class == ELFCLASSNONE) { in rproc_coredump()
257 data_size = elf_size_of_hdr(class); in rproc_coredump()
264 data_size += elf_size_of_phdr(class); in rproc_coredump()
277 memset(ehdr, 0, elf_size_of_hdr(class)); in rproc_coredump()
279 elf_hdr_init_ident(ehdr, class); in rproc_coredump()
281 elf_hdr_set_e_type(class, ehdr, ET_CORE); in rproc_coredump()
282 elf_hdr_set_e_machine(class, ehdr, rproc->elf_machine); in rproc_coredump()
283 elf_hdr_set_e_version(class, ehdr, EV_CURRENT); in rproc_coredump()
284 elf_hdr_set_e_entry(class, ehdr, rproc->bootaddr); in rproc_coredump()
285 elf_hdr_set_e_phoff(class, ehdr, elf_size_of_hdr(class)); in rproc_coredump()
286 elf_hdr_set_e_ehsize(class, ehdr, elf_size_of_hdr(class)); in rproc_coredump()
287 elf_hdr_set_e_phentsize(class, ehdr, elf_size_of_phdr(class)); in rproc_coredump()
288 elf_hdr_set_e_phnum(class, ehdr, phnum); in rproc_coredump()
290 phdr = data + elf_hdr_get_e_phoff(class, ehdr); in rproc_coredump()
291 offset = elf_hdr_get_e_phoff(class, ehdr); in rproc_coredump()
292 offset += elf_size_of_phdr(class) * elf_hdr_get_e_phnum(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()
303 elf_phdr_set_p_align(class, phdr, 0); in rproc_coredump()
309 offset += elf_phdr_get_p_filesz(class, phdr); in rproc_coredump()
310 phdr += elf_size_of_phdr(class); in rproc_coredump()
355 u8 class = rproc->elf_class; in rproc_coredump_using_sections() local
365 if (class == ELFCLASSNONE) { in rproc_coredump_using_sections()
375 data_size = elf_size_of_hdr(class) + 2 * elf_size_of_shdr(class); in rproc_coredump_using_sections()
382 data_size += elf_size_of_shdr(class); in rproc_coredump_using_sections()
396 memset(ehdr, 0, elf_size_of_hdr(class)); in rproc_coredump_using_sections()
398 elf_hdr_init_ident(ehdr, class); in rproc_coredump_using_sections()
400 elf_hdr_set_e_type(class, ehdr, ET_CORE); in rproc_coredump_using_sections()
401 elf_hdr_set_e_machine(class, ehdr, rproc->elf_machine); in rproc_coredump_using_sections()
402 elf_hdr_set_e_version(class, ehdr, EV_CURRENT); in rproc_coredump_using_sections()
403 elf_hdr_set_e_entry(class, ehdr, rproc->bootaddr); in rproc_coredump_using_sections()
404 elf_hdr_set_e_shoff(class, ehdr, elf_size_of_hdr(class)); in rproc_coredump_using_sections()
405 elf_hdr_set_e_ehsize(class, ehdr, elf_size_of_hdr(class)); in rproc_coredump_using_sections()
406 elf_hdr_set_e_shentsize(class, ehdr, elf_size_of_shdr(class)); in rproc_coredump_using_sections()
407 elf_hdr_set_e_shnum(class, ehdr, shnum); in rproc_coredump_using_sections()
408 elf_hdr_set_e_shstrndx(class, ehdr, 1); in rproc_coredump_using_sections()
414 shdr = data + elf_hdr_get_e_shoff(class, ehdr); in rproc_coredump_using_sections()
415 memset(shdr, 0, elf_size_of_shdr(class)); in rproc_coredump_using_sections()
416 shdr += elf_size_of_shdr(class); in rproc_coredump_using_sections()
419 offset = elf_hdr_get_e_shoff(class, ehdr) + in rproc_coredump_using_sections()
420 elf_size_of_shdr(class) * elf_hdr_get_e_shnum(class, ehdr); in rproc_coredump_using_sections()
424 memset(shdr, 0, elf_size_of_shdr(class)); in rproc_coredump_using_sections()
425 elf_shdr_set_sh_type(class, shdr, SHT_STRTAB); in rproc_coredump_using_sections()
426 elf_shdr_set_sh_offset(class, shdr, offset); in rproc_coredump_using_sections()
427 elf_shdr_set_sh_size(class, shdr, strtbl_size); in rproc_coredump_using_sections()
428 elf_shdr_set_sh_entsize(class, shdr, 0); in rproc_coredump_using_sections()
429 elf_shdr_set_sh_flags(class, shdr, 0); in rproc_coredump_using_sections()
430 elf_shdr_set_sh_name(class, shdr, elf_strtbl_add(str_tbl, ehdr, class, &strtbl_index)); in rproc_coredump_using_sections()
431 offset += elf_shdr_get_sh_size(class, shdr); in rproc_coredump_using_sections()
432 shdr += elf_size_of_shdr(class); in rproc_coredump_using_sections()
435 memset(shdr, 0, elf_size_of_shdr(class)); in rproc_coredump_using_sections()
436 elf_shdr_set_sh_type(class, shdr, SHT_PROGBITS); in rproc_coredump_using_sections()
437 elf_shdr_set_sh_offset(class, shdr, offset); in rproc_coredump_using_sections()
438 elf_shdr_set_sh_addr(class, shdr, segment->da); in rproc_coredump_using_sections()
439 elf_shdr_set_sh_size(class, shdr, segment->size); in rproc_coredump_using_sections()
440 elf_shdr_set_sh_entsize(class, shdr, 0); in rproc_coredump_using_sections()
441 elf_shdr_set_sh_flags(class, shdr, SHF_WRITE); in rproc_coredump_using_sections()
442 elf_shdr_set_sh_name(class, shdr, in rproc_coredump_using_sections()
443 elf_strtbl_add(segment->priv, ehdr, class, &strtbl_index)); in rproc_coredump_using_sections()
449 offset += elf_shdr_get_sh_size(class, shdr); in rproc_coredump_using_sections()
450 shdr += elf_size_of_shdr(class); in rproc_coredump_using_sections()