Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Kirill Korotaev <dev@xxxxx>
- Date: Mon, 06 Feb 2006 20:21:21 +0300
I agree.Please, also note, in OpenVZ we have 2 pointers on task_struct:
One is owner of a task (owner_env), 2nd is a current context (exec_env).
exec_env pointer is used to avoid adding of additional argument to all the
functions where current context is required.
That naming _has_ to change.
"exec" has a very clear meaning in unix: it talks about the notion of switching to another process image, or perhaps the bit that says that a file contains an image that can be executed. It has nothing to do with "current".agree on this either. Good point.
What you seem to be talking about is the _effective_ environment. Ie the same way we have "uid" and "euid", you'd have a "container" and the "effective container".
The "owner" name also makes no sense. The security context doesn't "own" tasks. A task is _part_ of a context.
So if some people don't like "container", how about just calling it "context"? The downside of that name is that it's very commonly used in the kenel, because a lot of things have "contexts". That's why "container" would be a lot better.maybe task_container? i.e. where task actually is.
I'd suggest
current->container - the current EFFECTIVE container
current->master_container - the "long term" container.
(replace "master" with some other non-S&M term if you want)
Sounds good for you?
The only problem with such names I see, that task will be an exception then compared to other objects. I mean, on other objects field "container" will mean the container which object is part of. But for tasks this will mean effective one. Only tasks need these 2 containers pointers and I would prefer having the common one to be called simply "container".
Maybe then
current->econtainer - effective container
current->container - "long term" container
(It would make sense to just have the prepend-"e" semantics of uid/gid, but the fact is, "euid/egid" has a long unix history and is readable only for that reason. The same wouldn't be true of containers. And "effective_container" is probably too long to use for the field that is actually the _common_ case. Thus the above suggestion).Your proposal looks quite nice.
Then we will have eventually "container" field on objects (not on task only) which sounds good to me. I will prepare patches right now.
Kirill
-
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/
- References:
- [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Kirill Korotaev
- Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Linus Torvalds
- Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Kirill Korotaev
- Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Linus Torvalds
- Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Dave Hansen
- Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Kirill Korotaev
- Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- From: Linus Torvalds
- [RFC][PATCH 1/5] Virtualization/containers: startup
- Prev by Date: [BUG] Linux 2.6.16-rcX breaks mutt
- Next by Date: Re: [QUESTION/sysfs] strange refcounting
- Previous by thread: Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- Next by thread: Re: [RFC][PATCH 1/5] Virtualization/containers: startup
- Index(es):
Relevant Pages
|