On 2004.12.21 18:19:26 +0100, Ola Lundqvist wrote:
> Hello
> 
> I forward this bugreport that I have got from
> Helmut Toplitzer <[EMAIL PROTECTED]> that fix a problem
> with context misunderstanding at start of a vserver.
> 
> It is a quite simple patch and as far as I have tested it works fine.
> 
> It is applied to the debian version of util-vserver.
> 
> For full information see http://bugs.debian.org/280723
> 
> Regards,
> 
> // Ola
> 
> ----- Forwarded message from Helmut Toplitzer <[EMAIL PROTECTED]> -----
> 
> Envelope-to: [EMAIL PROTECTED]
> Delivery-date: Mon, 15 Nov 2004 16:30:57 +0100
> From: Helmut Toplitzer <[EMAIL PROTECTED]>
> Organization: University of Klagenfurt
> To: [EMAIL PROTECTED]
> Subject: Re: Bug#280723: [util-vserver]: vserver-stat shows wrong server as 
> started one
> Cc: [EMAIL PROTECTED]
> X-UID: 82
> X-Length: 1861
> X-OriginalArrivalTime: 15 Nov 2004 15:31:56.0343 (UTC) 
> FILETIME=[3D751470:01C4CB28]
> X-Spamcheck-Provider: Checked for spam by OpaL, [EMAIL PROTECTED]
> X-Spam-Checker-Version: SpamAssassin 2.64 (2004-01-11) on bixbite.opal.dhs.org
> X-Spam-Level: 
> X-Spam-Status: No, hits=0.0 required=4.0 tests=none autolearn=no version=2.64
> 
> 
> Some analysis:
> 
> /usr/sbin/vserver script:
> 
> Context of new vserver is set
>  - by /etc/vservers/name.conf 
>  - or by /var/run/vservers/name.ctx
>  - or by the chcontext script itself
> 
> "running" is evaluated by:
>  - /var/run/vservers/name.ctx lockfile exists?
>  - (vps ax | grep context | wc -l) >0 ?
> 
> 1) Checking for running vserver in "start" makes
>    no sense because .ctx files are never deleted
>    and it's possible that other vserver has same
>    context and is already running. 
>    So the result of "running" is running even
>    if other vserver is started in this context.

What's the sense in having two or more vservers sharing the same
context? It may occur with vserver's having a dynamic context id that a
context id gets reused, but you should use static context ids anyway.
And even if there's another vserver running in the same context, do you
really want a second vserver to be started in that context? I doubt it.
So IMHO checking if the vserver is running before starting it is fine in
the way it is done right now.

> 
> 2) Deleting vservers .ctx file makes no sense 
>    either because it can be missed by a hard reboot,
>    kill, etc.
> 

And it's not necessary, if no process is actually running in the context
whose id is stored in the .ctx file, the vserver is considered "not
runnning".

> 3) Solution: before starting any vserver test
>    for ALL vservers if they are running and remove
>    remaining .ctx files of not running ones.
>    Once booted into the schema everything should work.
>    (hopefully *sigh*)

Now where's the difference, apart from the fact that all outdated .ctx
files are removed? Your patch removes exactly those files that would not
lead to the result that a vserver is considered running...

Regards
Bjoern
_______________________________________________
Vserver mailing list
[EMAIL PROTECTED]
http://list.linux-vserver.org/mailman/listinfo/vserver

Reply via email to