Thread (12 messages) 12 messages, 4 authors, 2021-09-20

Re: [PATCH 1/8] fork: add helper to clone a process

From: Christoph Hellwig <hch@infradead.org>
Date: 2021-09-17 06:03:02
Also in: lkml

On Thu, Sep 16, 2021 at 04:20:44PM -0500, Mike Christie wrote:
The vhost layer has similar requirements as io_uring where its worker
threads need to access the userspace thread's memory, want to inherit the
parents's cgroups and namespaces, and be checked against the parent's
RLIMITs. Right now, the vhost layer uses the kthread API which has
kthread_use_mm for mem access, and those threads can use
cgroup_attach_task_all for v1 cgroups, but there are no helpers for the
other items.

This adds a helper to clone a process so we can inherit everything we
want in one call. It's a more generic version of create_io_thread which
will be used by the vhost layer and io_uring in later patches in this set.

This patch also exports __set_task_comm and wake_up_new_task which is
needed by modules to use the new helper. io_uring calls these functions
already but its always built into the kernel so was not needed before.
Can you build proper APIs please?  e.g. the set_task_comm users
generally want a printf-like varargs caling conventions.  I'd also
much prefer to hide as much as possible in the actual helper.  That is
build a helper that gets the name, a flag to ignore the singals etc
instead of exporting all these random low-level helpers.
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help