Thread (64 messages) 64 messages, 15 authors, 2006-12-10

Re: [Devel] Re: Network virtualization/isolation

From: Herbert Poetzl <hidden>
Date: 2006-12-06 18:30:38

On Wed, Dec 06, 2006 at 02:54:16PM +0300, Kirill Korotaev wrote:
quoted
quoted
quoted
If there is a better and less intrusive while still being obvious
method I am all for it.  I do not like the OpenVZ thing of doing the
lookup once and then stashing the value in current and the special
casing the exceptions.
Why?

I like it when things are obvious and not implied.

The implementations seems to favor fewer lines of code touched over
maintainability of the code.  Which if you are maintaining out of
tree code is fine.  At leas that was my impression last time
I looked at the code.
FYI, when we started doing networking virtualization many years ago
we tried both approaches.
Over time, context notion looked much more natural and easier for us.
Even Alexey Kuznetsov tells that he prefers exec_env as the logic
becomes very clear and little mess is introduced.
quoted
I know there are a lot of silly things in the existing implementations
because they were initially written without the expectation of being
able to merge the code into the main kernel.  This resulted in some
non-general interfaces, and a preference for patches that touch
as few lines of code as possible.  
Sure, but OpenVZ code is being constantly cleaned from such code
and we are open for discussion. No one pretends that code is perferct
from the beginning.
quoted
Anyway this has bit has been discussed before and we can discuss it
seriously in the context of patch review.
Let me explain when explicit context like exec_env IMHO is cleaner:
- context is a natural notion of linux kernel. e.g. current.
  why not pass 'current' to all the functions as an argument
  starting from entry.S?
  in_atomic(), in_interrupt() etc. all these functions deal with
  current context. IMHO when one needs to pass an argument too many
  times like 'current'
  it is better to use a notion of the context.
- e.g. NFS should set networking context of the mount point or socket.
how would that work for a 'shared' NFS partition?
(shared between different context)
But, ok, it is not the real point to argue so much imho and waste our
time instead of doing things.
well, IMHO better talk (and think) first, then implement
something ... not the other way round, and then start
fixing up the mess ...

best,
Herbert
Thanks,
Kirill

_______________________________________________
Containers mailing list
Containers@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/containers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help