7#ifndef ZEPHYR_LLEXT_INSPECT_H
8#define ZEPHYR_LLEXT_INSPECT_H
49 const struct llext *ext,
52 const void **addr,
size_t *size)
59 *hdr = &ldr->sects[region];
64 *addr = (
void *)((
uintptr_t)ext->
mem[region] + ldr->sects[region].sh_info);
67 *size = ext->
mem_size[region] - ldr->sects[region].sh_info;
87 const char *section_name);
109 const struct llext *ext,
115 if (shndx < 0 || shndx >= ext->sect_cnt) {
118 if (!ldr->sect_map) {
122 enum llext_mem mem_idx = ldr->sect_map[shndx].mem_idx;
125 *hdr = &ext->sect_hdrs[shndx];
133 *offset = ldr->sect_map[shndx].offset - ldr->sects[mem_idx].sh_info;
llext_mem
List of memory regions stored or referenced in the LLEXT subsystem.
Definition llext.h:44
@ LLEXT_MEM_COUNT
Number of regions managed by LLEXT.
Definition llext.h:57
static int llext_get_section_info(const struct llext_loader *ldr, const struct llext *ext, unsigned int shndx, const elf_shdr_t **hdr, enum llext_mem *region, size_t *offset)
Get information about a section for the specified extension.
Definition inspect.h:108
int llext_section_shndx(const struct llext_loader *ldr, const struct llext *ext, const char *section_name)
Get the index of a section with the specified name.
static int llext_get_region_info(const struct llext_loader *ldr, const struct llext *ext, enum llext_mem region, const elf_shdr_t **hdr, const void **addr, size_t *size)
Get information about a memory region for the specified extension.
Definition inspect.h:48
#define EINVAL
Invalid argument.
Definition errno.h:60
#define ENOTSUP
Unsupported value.
Definition errno.h:114
Support for linkable loadable extensions.
Private header for linkable loadable extensions.
LLEXT ELF loader context types.
__UINTPTR_TYPE__ uintptr_t
Definition stdint.h:105
Section Header(64-bit)
Definition elf.h:177
Linkable loadable extension loader context.
Definition loader.h:80
Structure describing a linkable loadable extension.
Definition llext.h:80
size_t mem_size[LLEXT_MEM_COUNT]
Size of each stored region.
Definition llext.h:101
void * mem[LLEXT_MEM_COUNT]
Lookup table of memory regions.
Definition llext.h:95