diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2022-11-12 22:47:49 +0200 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2022-11-12 22:47:49 +0200 |
| commit | 845cf97e1faee613e3e73900f5f93bfcedc831f1 (patch) | |
| tree | 17d754897f1b7bcaa8f465d917b30296e5abc3e2 /arch/riscv64/kernel/vmem.c | |
| parent | 605ccff557d031aa83c79087f419769756aa0953 (diff) | |
| download | kmi-845cf97e1faee613e3e73900f5f93bfcedc831f1.tar.gz kmi-845cf97e1faee613e3e73900f5f93bfcedc831f1.zip | |
release mode, ~600k requests
Diffstat (limited to 'arch/riscv64/kernel/vmem.c')
| -rw-r--r-- | arch/riscv64/kernel/vmem.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/riscv64/kernel/vmem.c b/arch/riscv64/kernel/vmem.c index 68ccbd3..a3903f1 100644 --- a/arch/riscv64/kernel/vmem.c +++ b/arch/riscv64/kernel/vmem.c @@ -345,11 +345,16 @@ vm_t setup_kernel_io(struct vmem *b, vm_t paddr) } #endif +struct uvmem_map { + struct vmem *leaf[CSTACK_PAGE - 1]; +}; + stat_t clone_uvmem(struct vmem *r, struct vmem *b) { /** \todo error checking? */ - for (size_t i = 0; i < CSTACK_PAGE; ++i) - b->leaf[i] = r->leaf[i]; + struct uvmem_map *rm = (struct uvmem_map *)(r); + struct uvmem_map *bm = (struct uvmem_map *)(b); + *bm = *rm; return OK; } |
