<div dir="ltr">Hi Serge,<div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Apr 17, 2013 at 6:02 PM, Serge Hallyn <span dir="ltr"><<a href="mailto:serge.hallyn@ubuntu.com" target="_blank">serge.hallyn@ubuntu.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>Quoting S.Çağlar Onur (<a href="mailto:caglar@10ur.org" target="_blank">caglar@10ur.org</a>):<br>


> From: "S.Çağlar Onur" <<a href="mailto:caglar@10ur.org" target="_blank">caglar@10ur.org</a>><br>
><br>
> Trying to start multiple containers concurrently may cause lxc_monitor_read_timeout to fail as select call could be interrupted by a signal, handle it.<br>
><br>
> Signed-off-by: S.Çağlar Onur <<a href="mailto:caglar@10ur.org" target="_blank">caglar@10ur.org</a>><br>
> ---<br>
>  src/lxc/state.c |    9 +++++++--<br>
>  1 file changed, 7 insertions(+), 2 deletions(-)<br>
><br>
> diff --git a/src/lxc/state.c b/src/lxc/state.c<br>
> index 437f11a..0bb307d 100644<br>
> --- a/src/lxc/state.c<br>
> +++ b/src/lxc/state.c<br>
> @@ -231,8 +231,13 @@ extern int lxc_wait(const char *lxcname, const char *states, int timeout, const<br>
>                               goto out_close;<br>
>                       curtime = tv.tv_sec;<br>
>               }<br>
> -             if (lxc_monitor_read_timeout(fd, &msg, timeout) < 0)<br>
> -                     goto out_close;<br>
> +             if (lxc_monitor_read_timeout(fd, &msg, timeout) < 0) {<br>
> +                     /* continue if select interrupted by signal */<br>
> +                     if (errno == EINTR)<br>
> +                             continue;<br>
<br>
</div>Hm, wait, sorry - you need to recalculate the timeout here (if not -1)?<br></blockquote><div><br></div><div>Ah, good catch, I'll wait <span style="font-family:arial,sans-serif;font-size:13px">Stéphane's response to other patch and submit them together.</span><br>

</div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">



<div><br>
> +                     else<br>
> +                             goto out_close;<br>
> +             }<br>
><br>
>               if (timeout != -1) {<br>
>                       retval = gettimeofday(&tv, NULL);<br>
> --<br>
> 1.7.10.4<br>
><br>
><br>
</div><div><div>> ------------------------------------------------------------------------------<br>
> Precog is a next-generation analytics platform capable of advanced<br>
> analytics on semi-structured data. The platform includes APIs for building<br>
> apps and a phenomenal toolset for data science. Developers can use<br>
> our toolset for easy data analysis & visualization. Get a free account!<br>
> <a href="http://www2.precog.com/precogplatform/slashdotnewsletter" target="_blank">http://www2.precog.com/precogplatform/slashdotnewsletter</a><br>
> _______________________________________________<br>
> Lxc-devel mailing list<br>
> <a href="mailto:Lxc-devel@lists.sourceforge.net" target="_blank">Lxc-devel@lists.sourceforge.net</a><br>
> <a href="https://lists.sourceforge.net/lists/listinfo/lxc-devel" target="_blank">https://lists.sourceforge.net/lists/listinfo/lxc-devel</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>S.Çağlar Onur <<a href="mailto:caglar@10ur.org" target="_blank">caglar@10ur.org</a>>
</div></div>