X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/32b9a6d76790c73d3d2d36d9081a2581cc65d184..28c176b668c841a3b7fb093faccf0efa39257603:/lunaix-os/arch/i386/mm/vmutils.c?ds=sidebyside diff --git a/lunaix-os/arch/i386/mm/vmutils.c b/lunaix-os/arch/i386/mm/vmutils.c deleted file mode 100644 index c787892..0000000 --- a/lunaix-os/arch/i386/mm/vmutils.c +++ /dev/null @@ -1,28 +0,0 @@ -#include -#include - -struct leaflet* -dup_leaflet(struct leaflet* leaflet) -{ - ptr_t dest_va, src_va; - struct leaflet* new_leaflet; - - new_leaflet = alloc_leaflet(leaflet_order(leaflet)); - - src_va = leaflet_mount(leaflet); - dest_va = vmap(new_leaflet, KERNEL_DATA); - - size_t cnt_wordsz = leaflet_size(new_leaflet) / sizeof(ptr_t); - - asm volatile("movl %1, %%edi\n" - "movl %2, %%esi\n" - "rep movsl\n" ::"c"(cnt_wordsz), - "r"(dest_va), - "r"(src_va) - : "memory", "%edi", "%esi"); - - leaflet_unmount(leaflet); - vunmap(dest_va, new_leaflet); - - return new_leaflet; -} \ No newline at end of file