Re: [ckrm-tech] [RFC] Resource Management - Infrastructure choices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/1/06, Matt Helsley <[email protected]> wrote:
On Wed, 2006-11-01 at 23:42 +0530, Srivatsa Vaddagiri wrote:
> On Wed, Nov 01, 2006 at 12:30:13PM +0300, Pavel Emelianov wrote:

<snip>

> > >   - Support movement of all threads of a process from one group
> > >     to another atomically?
> >
> > I propose such a solution: if a user asks to move /proc/<pid>
> > then move the whole task with threads.
> > If user asks to move /proc/<pid>/task/<tid> then move just
> > a single thread.
> >
> > What do you think?
>
> Isnt /proc/<pid> listed also in /proc/<pid>/task/<tid>?
>
> For ex:
>
>       # ls /proc/2906/task
>       2906  2907  2908  2909
>
> 2906 is the main thread which created the remaining threads.
>
> This would lead to an ambiguity when user does something like below:
>
>       echo 2906 > /some_res_file_system/some_new_group
>
> Is he intending to move just the main thread, 2906, to the new group or
> all the threads? It could be either.
>
> This needs some more thought ...

        I thought the idea was to take in a proc path instead of a single
number. You could then distinguish between the whole thread group and
individual threads by parsing the string. You'd move a single thread if
you find both the tgid and the tid. If you only get a tgid you'd move
the whole thread group. So:

<pid>                   -> if it's a thread group leader move the whole
                           thread group, otherwise just move the thread
/proc/<tgid>            -> move the whole thread group
/proc/<tgid>/task/<tid> -> move the thread


        Alternatives that come to mind are:

1. Read a flag with the pid
2. Use a special file which expects only thread groups as input

I think that having a "tasks" file and a "threads" file in each
container directory would be a clean way to handle it:

"tasks" : read/write complete process members
"threads" : read/write individual thread members

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux