Hello everyone,

I have a question about the space creation flags provided to the thread_control syscall. I need to spawn isolated threads and saw that codezero's libl4 does not provide support for flags other than the TC_SHARE_SPACE.

What I actually am trying to reproduce would be the equivalent of a fork system call (I just want to also provide an entry point but that's not where the difficulty lies). My main problem is that TC_COPY_SPACE seems to only copy the actual PTE entries into new PMD's. Therefore, the newly created thread works on a different address space but actually on the same physical memory. Would the simplest way be to use TC_NEW_SPACE and then remap/copy all pages from the original space to the new one or is there a practical way of doing it that I am missing? What is the point of TC_COPY_SPACE if the resulting spaces work on the same physical pages at the beginning?

Thank you for taking the time to read this and don't hesitate to point out any misunderstanding from my part.

Best regards,

François



_______________________________________________
codezero-devel mailing list
codezero-devel@lists.l4dev.org
http://lists.l4dev.org/mailman/listinfo/codezero-devel_lists.l4dev.org

Reply via email to