Skip to content

Commit f7c4d1d

Browse files
committed
llext_manager: minor preparatory refactors
This commit does some minor preparatory refactors in the llext_manager module in preparation for the upcoming change to use the new LLEXT inspection API. Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
1 parent 281f409 commit f7c4d1d

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/library_manager/llext_manager.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,9 @@ static int llext_manager_load_data_from_storage(const struct llext *ext,
7575
size_t size, uint32_t flags)
7676
{
7777
unsigned int i;
78-
int ret = llext_manager_align_map(vma, size, SYS_MM_MEM_PERM_RW);
79-
const elf_shdr_t *shdr;
78+
int ret;
8079

80+
ret = llext_manager_align_map(vma, size, SYS_MM_MEM_PERM_RW);
8181
if (ret < 0) {
8282
tr_err(&lib_manager_tr, "cannot map %u of %p", size, (__sparse_force void *)vma);
8383
return ret;
@@ -240,8 +240,9 @@ static int llext_manager_link(struct llext_buf_loader *ebl, const char *name,
240240
.pre_located = true,
241241
.section_detached = llext_manager_section_detached,
242242
};
243-
int ret = llext_load(&ebl->loader, name, &md->llext, &ldr_parm);
243+
int ret;
244244

245+
ret = llext_load(&ebl->loader, name, &md->llext, &ldr_parm);
245246
if (ret)
246247
return ret;
247248

@@ -270,17 +271,19 @@ static int llext_manager_link(struct llext_buf_loader *ebl, const char *name,
270271
mctx->segment[LIB_MANAGER_DATA].addr,
271272
mctx->segment[LIB_MANAGER_DATA].size);
272273

274+
*buildinfo = NULL;
273275
ssize_t binfo_o = llext_find_section(&ebl->loader, ".mod_buildinfo");
274276

275277
if (binfo_o >= 0)
276278
*buildinfo = llext_peek(&ebl->loader, binfo_o);
277279

280+
*mod_manifest = NULL;
278281
ssize_t mod_o = llext_find_section(&ebl->loader, ".module");
279282

280283
if (mod_o >= 0)
281284
*mod_manifest = llext_peek(&ebl->loader, mod_o);
282285

283-
return binfo_o >= 0 && mod_o >= 0 ? 0 : -EPROTO;
286+
return buildinfo && mod_manifest ? 0 : -EPROTO;
284287
}
285288

286289
static int llext_manager_mod_init(struct lib_manager_mod_ctx *ctx,

0 commit comments

Comments
 (0)