<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Feb 2, 2015 at 7:45 PM, Tomasz Chmielewski <span dir="ltr"><<a href="mailto:mangoo@wpkg.org" target="_blank">mangoo@wpkg.org</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"><span class="">On 2015-02-02 21:37, Fajar A. Nugraha wrote:<br>
<br>
</span><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"><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"><span class="">
It's certainly possible to do "not applicable" kinds of things with<br>
processes and their page cache, i.e.:<br>
<br>
</span><a href="https://code.google.com/p/pagecache-mangagement/" target="_blank">https://code.google.com/p/<u></u>pagecache-mangagement/</a> [1]<span class=""><br>
<br>
Or here, disabling O_DIRECT and sync would be sort of matching<br>
"feature-wise" with KVM's cache=writeback:<br>
<br>
</span><a href="http://www.mcgill.org.za/stuff/software/nosync" target="_blank">http://www.mcgill.org.za/<u></u>stuff/software/nosync</a> [2]<span class=""><br>
<br>
Is it possible to set things like this for all processes in a given<br>
lxc container?<br>
</span></blockquote><span class="">
<br>
What are you trying to achieve?<br>
</span></blockquote>
<br>
I'm trying to achieve the equivalent of KVM's cache=writeback (or, "libeatmydata / nosync") for the whole container.<span class=""><br>
<br></span></blockquote><div><br></div><div><br></div><div>What I meant was, what are you trying to achieve by doing that? The ones you mentioned are ways to do something, which might not be applicable in this case.</div><div><br></div><div>I assume you want to "disable sync completely, even if it means losing data on power failure" (which is what eatmydata does).</div><div><br></div><div> </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"><span class="">
<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">
If you want to disable sync for the container, the best you can do is<br>
probably use some filesystem that can do so. For example, zfs has<br>
"sync=disabled" per-dataset settings. So you can have "sync=standard"<br>
for filesystems used by the host, and "sync=disabled" for filesystems<br>
used by containers.<br>
</blockquote>
<br></span>
That's a weird advice, given that lxc are Linux containers, and ZFS is not in Linux kernel (I know that there are some 3rd party porting attempts, but it's not really applicable in many situations).<div class=""><div class="h5"><br></div></div></blockquote><div><br></div><div></div></div>Honestly, that's the best advice I can give. It's straightforward, simple, and works.</div><div class="gmail_extra"><br></div><div class="gmail_extra">There are lots of zfsonlinux users using it on production environment. Even lxc-create supports zfs as backingstore, to a degree (man lxc-create). And doing the above is the equivalent of having eatmydata running on everything that access that dataset.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Other possible solutions that I know of either does not work (e.g. eatmydata lxc-start ...) or adds additional layers and complexity (e.g. using an additional layer like iscsi/scst and setting nv_cache=1 on scst)</div><div class="gmail_extra"><br></div><div class="gmail_extra">-- </div><div class="gmail_extra">Fajar</div></div>