aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/include/sys/exec.h5
-rw-r--r--sys/kern/exec_elf64.c1
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/include/sys/exec.h b/sys/include/sys/exec.h
index f5fac97..810e89e 100644
--- a/sys/include/sys/exec.h
+++ b/sys/include/sys/exec.h
@@ -53,8 +53,9 @@
STACK_PUSH(PTR, TAG);
struct exec_range {
- uintptr_t start;
- uintptr_t end;
+ paddr_t start;
+ paddr_t end;
+ vaddr_t vbase;
};
struct auxval {
diff --git a/sys/kern/exec_elf64.c b/sys/kern/exec_elf64.c
index 8e15839..b207fbb 100644
--- a/sys/kern/exec_elf64.c
+++ b/sys/kern/exec_elf64.c
@@ -220,6 +220,7 @@ elf64_load(const char *pathname, struct proc *td, struct exec_prog *prog)
loadmap[i].start = physmem;
loadmap[i].end = physmem + map_len;
+ loadmap[i].vbase = phdr->p_vaddr;
}
}