Eric Keller wrote:
> What I'm trying to do is to run a kernel thread, but have it associated
> with a particular user's context. The reason is this - I want to run
> Click in the kernel, but allow each user to provide their own click
> graph. The root context will manage the whole process, performing
> checks, then merging the various click graphs into a single click graph,
> and installing that in the kernel. Each user graph would be run within
> their own kernel thread.
Why would it need to be associated with the context? How would it be started?
> I've looked through the vserver code and before I start doing any
> modifications, I wanted to post to the group to see if anyone has any
> guidance. It appears that include/linux/vs_context.h provides all of
> the functionality I'd need. So I would start the kernel thread as
> usual, then I would transfer it (by changing vx_info and xid, from
> task_struct) from the kernel's vx_info to a particular user context's
> vx_info (I would get the vx_info with lookup_vx_info(xid)).
All those values are inherited from the parent, so this kind of depends on
the answer to my second question above.
Note that there are more values to consider. vx_migrate_task handles all
this for you, so you might want to look at using that...
> Does that sound right, or where should I be looking?
>
> Thanks,
> Eric Keller
-- Daniel Hokka ZakrissonReceived on Fri Nov 30 17:07:15 2007