<div dir="ltr">My preference would also have been to dump everything but in the light of what Pavel said about performance, CRIU needs to dump the minimum it needs.  So, it&#39;s better to have it not dump cgroups by default and dump cgroups only if specifically told so by a command line option.  I&#39;d be fine with this.<div>
<br></div><div>--Saied</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Aug 4, 2014 at 12:35 PM, Tycho Andersen <span dir="ltr">&lt;<a href="mailto:tycho.andersen@canonical.com" target="_blank">tycho.andersen@canonical.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On Mon, Aug 04, 2014 at 12:30:02PM -0700, Saied Kazemi wrote:<br>
&gt; If performance has higher priority to usage, then I&#39;d suggest that we add<br>
&gt; an option to *enable* dumping cgroups (as opposed to the other way around)<br>
&gt; because in most cases we will not have to dump and, therefore, there will<br>
&gt; be one less option to specify on the command line.<br>
<br>
</div>I guess that is an interesting question. I was thinking of it as &quot;dump<br>
everything you can by default&quot;, but perhaps an enable option is the<br>
right way to go in light of things like --tcp-established.<br>
<span class="HOEnZb"><font color="#888888"><br>
Tycho<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
&gt; --Saied<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Mon, Aug 4, 2014 at 11:17 AM, Pavel Emelyanov &lt;<a href="mailto:xemul@parallels.com">xemul@parallels.com</a>&gt;<br>
&gt; wrote:<br>
&gt;<br>
&gt; &gt; On 08/04/2014 10:10 PM, Serge Hallyn wrote:<br>
&gt; &gt; &gt; Quoting Pavel Emelyanov (<a href="mailto:xemul@parallels.com">xemul@parallels.com</a>):<br>
&gt; &gt; &gt;&gt; On 08/04/2014 08:08 PM, Saied Kazemi wrote:<br>
&gt; &gt; &gt;&gt;&gt; Yes, in practice it would be the responsibility of an &quot;agent&quot; (Docker,<br>
&gt; &gt; LXC, migration agent, etc.) to create the cgroups before attempting to<br>
&gt; &gt; restore the process.  In fact if restore is done on a different machine,<br>
&gt; &gt; the cgroups properties of the source machine may not even apply on the<br>
&gt; &gt; destination machine.<br>
&gt; &gt; &gt;&gt;&gt;<br>
&gt; &gt; &gt;&gt;&gt; That said, I think we can/should do without --no-restore-cgroup option<br>
&gt; &gt; because the cgroups restore logic in CRIU should detect that everything is<br>
&gt; &gt; already setup and there is no need for it to do anything (effectively it<br>
&gt; &gt; becomes a noop).<br>
&gt; &gt; &gt;&gt;&gt;<br>
&gt; &gt; &gt;&gt;&gt; In short, CRIU usage will be easier with less options.<br>
&gt; &gt; &gt;&gt;<br>
&gt; &gt; &gt;&gt; I agree, but how about dump -- if we can ask criu not to dump cgroups,<br>
&gt; &gt; this would be<br>
&gt; &gt; &gt;&gt; less cpu cycles on dump, it will be faster :)<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Is that meaningful percentage of dump time?  It ought to be quite quick.<br>
&gt; &gt;<br>
&gt; &gt; I can&#39;t tell for sure, but I once measured how much time it takes to dump a<br>
&gt; &gt; small task. ~30% of time criu spent looking up and parsing various /proc<br>
&gt; &gt; files.<br>
&gt; &gt;<br>
&gt; &gt; Thus I&#39;m a little bit concerned about scanning even virtual file systems<br>
&gt; &gt; in vain :)<br>
&gt; &gt;<br>
&gt; &gt; Thanks,<br>
&gt; &gt; Pavel<br>
&gt; &gt;<br>
&gt; &gt;<br>
</div></div></blockquote></div><br></div>