[Sheepdog] [PATCH] sheep: disable object cache by default

Christoph Hellwig hch at infradead.org
Mon May 7 17:02:53 CEST 2012


On Mon, May 07, 2012 at 05:27:33PM +0800, Liu Yuan wrote:
> > cache=none is the defualt for any serious user of qemu.  I'd really
> > avoid automatically enabling a feature like the object cache which
> > seems to weaken the persistancy semantics, and doesn't even have proper
> > documentation.
> 
> 
> That is the choice of the *user*, not QEMU. If users goes to pass
> cache=none to setup, he should know what he is doing. By the way,
> without object cache, isn't any meaning to pass cache option? All the
> option choice is the same thing for sheepdog, where we don't document it
> at all either.

The qemu cache option is a complicated beast, ignoring the unsafe=
option it implements the following matrix of options:

                          | writethrough semantics | writeback semantics
--------------------------+------------------------+--------------------
bypass kernel file cache  | cache=directsync       | cache=none
use kernel file cache     | cache=writethrough     | cache=writeback


the kernel file cache choice only really makes sense when using
local files (including device files) as backend.  The BDRV_O_CACHE_WB
the controls the other side of the matrix is what sheepdog should use
for presenting writeback semantics, and currently correctly does as
far as the client is concerned.

I'm just very concerned about enabling a brand new and mostly
undocumented feature like the object cache by default.  Give it a bit
more time and good documentation and you'll have a much easier time
convincing people to turn it on by default.



More information about the sheepdog mailing list