Lines Matching defs:ksyms_hdr
164 struct ksyms_hdr ksyms_hdr;
981 int32_t *note = ksyms_hdr.kh_note;
993 memcpy(&ksyms_hdr.kh_ehdr, hdraddr, sizeof(Elf_Ehdr));
996 ksyms_hdr.kh_ehdr.e_phoff = offsetof(struct ksyms_hdr, kh_phdr[0]);
997 ksyms_hdr.kh_ehdr.e_phentsize = sizeof(Elf_Phdr);
998 ksyms_hdr.kh_ehdr.e_phnum = NPRGHDR;
999 ksyms_hdr.kh_ehdr.e_shoff = offsetof(struct ksyms_hdr, kh_shdr[0]);
1000 ksyms_hdr.kh_ehdr.e_shentsize = sizeof(Elf_Shdr);
1001 ksyms_hdr.kh_ehdr.e_shnum = NSECHDR;
1002 ksyms_hdr.kh_ehdr.e_shstrndx = SHSTRTAB;
1005 ksyms_hdr.kh_phdr[0].p_type = PT_LOAD;
1006 ksyms_hdr.kh_phdr[0].p_memsz = (unsigned long)-1L;
1007 ksyms_hdr.kh_phdr[0].p_flags = PF_R | PF_X | PF_W;
1009 #define SHTCOPY(name) strlcpy(&ksyms_hdr.kh_strtab[offs], (name), \
1010 sizeof(ksyms_hdr.kh_strtab) - offs), offs += sizeof(name)
1014 ksyms_hdr.kh_shdr[SHNOTE].sh_name = offs;
1015 ksyms_hdr.kh_shdr[SHNOTE].sh_type = SHT_NOTE;
1016 ksyms_hdr.kh_shdr[SHNOTE].sh_offset =
1017 offsetof(struct ksyms_hdr, kh_note[0]);
1018 ksyms_hdr.kh_shdr[SHNOTE].sh_size = sizeof(ksyms_hdr.kh_note);
1019 ksyms_hdr.kh_shdr[SHNOTE].sh_addralign = sizeof(int);
1024 ksyms_hdr.kh_shdr[SYMTAB].sh_name = offs;
1025 ksyms_hdr.kh_shdr[SYMTAB].sh_type = SHT_SYMTAB;
1026 ksyms_hdr.kh_shdr[SYMTAB].sh_offset = sizeof(struct ksyms_hdr);
1027 /* ksyms_hdr.kh_shdr[SYMTAB].sh_size = filled in at open */
1028 ksyms_hdr.kh_shdr[SYMTAB].sh_link = STRTAB; /* Corresponding strtab */
1029 ksyms_hdr.kh_shdr[SYMTAB].sh_addralign = sizeof(long);
1030 ksyms_hdr.kh_shdr[SYMTAB].sh_entsize = sizeof(Elf_Sym);
1034 ksyms_hdr.kh_shdr[STRTAB].sh_name = offs;
1035 ksyms_hdr.kh_shdr[STRTAB].sh_type = SHT_STRTAB;
1036 /* ksyms_hdr.kh_shdr[STRTAB].sh_offset = filled in at open */
1037 /* ksyms_hdr.kh_shdr[STRTAB].sh_size = filled in at open */
1038 ksyms_hdr.kh_shdr[STRTAB].sh_addralign = sizeof(char);
1042 ksyms_hdr.kh_shdr[SHSTRTAB].sh_name = offs;
1043 ksyms_hdr.kh_shdr[SHSTRTAB].sh_type = SHT_STRTAB;
1044 ksyms_hdr.kh_shdr[SHSTRTAB].sh_offset =
1045 offsetof(struct ksyms_hdr, kh_strtab);
1046 ksyms_hdr.kh_shdr[SHSTRTAB].sh_size = SHSTRSIZ;
1047 ksyms_hdr.kh_shdr[SHSTRTAB].sh_addralign = sizeof(char);
1051 ksyms_hdr.kh_shdr[SHBSS].sh_name = offs;
1052 ksyms_hdr.kh_shdr[SHBSS].sh_type = SHT_NOBITS;
1053 ksyms_hdr.kh_shdr[SHBSS].sh_offset = 0;
1054 ksyms_hdr.kh_shdr[SHBSS].sh_size = (unsigned long)-1L;
1055 ksyms_hdr.kh_shdr[SHBSS].sh_addralign = PAGE_SIZE;
1056 ksyms_hdr.kh_shdr[SHBSS].sh_flags = SHF_ALLOC | SHF_EXECINSTR;
1060 ksyms_hdr.kh_shdr[SHCTF].sh_name = offs;
1061 ksyms_hdr.kh_shdr[SHCTF].sh_type = SHT_PROGBITS;
1062 /* ksyms_hdr.kh_shdr[SHCTF].sh_offset = filled in at open */
1063 /* ksyms_hdr.kh_shdr[SHCTF].sh_size = filled in at open */
1064 ksyms_hdr.kh_shdr[SHCTF].sh_link = SYMTAB; /* Corresponding symtab */
1065 ksyms_hdr.kh_shdr[SHCTF].sh_addralign = sizeof(char);
1133 error = ubc_copyfrombuf(uobj, &uio, &ksyms_hdr, sizeof(ksyms_hdr));
1145 KASSERT(uio.uio_offset == sizeof(struct ksyms_hdr));
1160 KASSERT(uio.uio_offset == sizeof(struct ksyms_hdr) +
1161 ksyms_hdr.kh_shdr[SYMTAB].sh_size);
1176 KASSERT(uio.uio_offset == sizeof(struct ksyms_hdr) +
1177 ksyms_hdr.kh_shdr[SYMTAB].sh_size +
1178 ksyms_hdr.kh_shdr[STRTAB].sh_size);
1187 KASSERT(uio.uio_offset == sizeof(struct ksyms_hdr) +
1188 ksyms_hdr.kh_shdr[SYMTAB].sh_size +
1189 ksyms_hdr.kh_shdr[STRTAB].sh_size +
1190 ksyms_hdr.kh_shdr[SHCTF].sh_size);
1240 size = sizeof(struct ksyms_hdr);
1246 ksyms_hdr.kh_shdr[SYMTAB].sh_size = ksyms_symsz;
1247 ksyms_hdr.kh_shdr[SYMTAB].sh_info = ksyms_symsz / sizeof(Elf_Sym);
1248 ksyms_hdr.kh_shdr[STRTAB].sh_offset = ksyms_symsz +
1249 ksyms_hdr.kh_shdr[SYMTAB].sh_offset;
1250 ksyms_hdr.kh_shdr[STRTAB].sh_size = ksyms_strsz;
1251 ksyms_hdr.kh_shdr[SHCTF].sh_offset = ksyms_strsz +
1252 ksyms_hdr.kh_shdr[STRTAB].sh_offset;
1253 ksyms_hdr.kh_shdr[SHCTF].sh_size = ksyms_ctfsz;