Re: (pspace,pid) vs true pid virtualization
From: Eric W. Biederman
Date: Fri Feb 17 2006 - 06:10:09 EST
"Serge E. Hallyn" <serue@xxxxxxxxxx> writes:
> Quoting Eric W. Biederman (ebiederm@xxxxxxxxxxxx):
>> "Serge E. Hallyn" <serue@xxxxxxxxxx> writes:
>> >> What happens when you migrate pspace 3 into a different pspace
>> >> on a different machine?
>> >
>> > Nothing special. "Migrate" was just a checkpoint (from pspace 1)
>> > and a resume (from pspace N on some machine). So now pspace N on
>> > the new machine has created a new pspace - which happens to be
>> > immediately populated with the contents of the old pspace 3 - and
>> > see the pid of the init process of this new pspace.
>> >
>> >> Is there a sane implementation for this?
>> >
>> > IMO, definately yes.
>> >
>> > But I haven't tried it, so my opinion is just that.
>>
>> If you are just talking the pid of the init process the problem seems
>> tractable.
>>
>> Where I see real problems with migration is and nested pid spaces
>> is when you expose all of your pids to your parent, and perhaps
>> there was some miscommunication on this point.
>>
>> To try and give an example.
>>
>> pspace 1 pspace 2 pspace 3 pspace 4
>> pid 234 -> pid 1
>> pid 235 -> pid 2 -> pid 1
>> pid 236 -> pid 3 -> pid 2 -> pid 1
>>
>> Hopefully this clearly shows what I was trying to avoid, by
>> only allow pid 1 of any pspace to be visible in the parent.
>
> Yes, I saw it more like:
>
>> pspace 1 pspace 2 pspace 3 pspace 4
>> pid 234 -> pid 1
>> pid 2 -> pid 1
>> pid 2 -> pid 1
>> pid 3
I kind of figured. I just wanted it to be clear why I have
a problem with the semantics of the current VPID implementation.
Especially as the tone of the post from the last day or two
was: Can't we satisfy everyone?
The picture you drew is all that is required for my implementation
and it doesn't run into problems because you only need one PID in
your parent pspace.
Eric
-
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/