memmove syscall

From: Nikolay Igotti
Date: Wed Feb 04 2004 - 07:37:41 EST


Maybe this is kinda crazy (or known) idea, but why don't we create syscall
allowing large copies by just manipulating MMU page table, i.e.

asmlinkage long sys_memmove(void* dst, void* src, int size) {
if ((dst & ~PAGE_SIZE) ||(src & ~PAGE_SIZE) || (size & ~PAGE_SIZE))
return -EINVAL;

return mmu_remap_pages(src, dst, size / PAGE_SIZE);
}


This could be useful for copying of large amounts of data when we know that
source not gonna be used anymore (typical example is garbage collector).

Please reply directly, as I'm not on the list.


Nikolay.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/