elf_validit...dex_versions(9)
β¨ elf_validity_cache_index_versions β the Kernel API Manual files β¨
okay so bestie, this page is elf_validit...dex_versions(9) and it lives in the Kernel API Manual (yes the title is literally squished with an ellipsis, we love a truncated icon π
). She's got a long name in the NAME section and honestly she earns it. Buckle up π
πΈ NAME πΈ
elf_validity_cache_index_versions β validate those version indices and then cache them, periodt. Validation girlie AND storage girlie, we contain multitudes β¨
π¦ SYNOPSIS π¦
int elf_validity_cache_index_versions (struct load_info *info , int
flags );
π ARGUMENTS π
infoβ the load info you're caching version indices into, bestie. Heads up tho: it must already haveload_info->sechdrsandload_info->secstringspopulated. No populating, no slay πflagsβ the load flags. These are the relevant ones for suppressing version loading β go peek atuapi/linux/module.hfor the deets, iykyk π
π DESCRIPTION π
okay so here's the vibe check π«Ά If we're straight-up ignoring modversions because of the flags, then we zero out all the version indices and just return validity. Done, iconic, no notes π
Othewrise β and yes we're checking, lowkey thorough β she verifies these two things:
- If
"__version_ext_crcs"is present, then"__version_ext_names"is present too. Like, they come as a set, no leaving your bestie behind π - There is a name present for every crc. Every single one. No stragglers, no cap β
Then, if present, she populates:
load_info->index.versload_info->index.vers_ext_crcload_info->index.vers_ext_names
that's the whole cache-and-go, main character energy fr fr π₯
π RETURN π
0if it's valid β slay β¨-ENOEXECon failure β not slay π
π§ SEE ALSO π§
so many siblings, this girl has a whole friend group π
- Kernel file
./kernel/module/main.c find_any_unique_sec(9)is_module_percpu_address(9)module_refcount(9)verify_module_namespace(9)elf_validity_ehdr(9)elf_validity_cache_sechdrs(9)elf_validity_cache_secstrings(9)elf_validity_cache_index_info(9)elf_validity_cache_index_mod(9)elf_validity_cache_index_sym(9)elf_validity_cache_index_str(9)elf_validity_cache_index(9)elf_validity_cache_strtab(9)is_module_address(9)__module_address(9)is_module_text_address(9)__module_text_address(9)
ngl bestie, do not call this one beforeload_info->sechdrsandload_info->secstringsare populated. That's the one requirement, don't break her heart π
π sign-off time: this page ships from ./kernel/module and it's dated October 2026. Consider yourself thoroughly informed, bestie β go be valid β¨ππΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms