[Sheepdog] [RFC PATCH] implement writeback cache semantics

Christoph Hellwig hch at infradead.org
Wed Nov 16 09:14:47 CET 2011


On Wed, Nov 16, 2011 at 02:01:13PM +0900, MORITA Kazutaka wrote:
> > +	 * XXX: need to write code to find all nodes that have objects for
> > +	 * this VDI.
> > +	 */
> 
> In most cases, the objects are uniformly distributed to every nodes,
> so it may be meaningless to find nodes that have the VDI's objects.
> 
> How about forwarding flush requests to every nodes in the first
> implementation?  At the next step, We can optimize it by forwarding
> them only to nodes that have actually received write requests since
> the last flush.

That sounds like a reasonable approach.

> > +static int store_flush_cache(struct request *req, uint32_t epoch)
> > +{
> > +	int ret = SD_RES_SUCCESS;
> > +	int fd;
> > +
> > +	/*
> > +	 * XXX: either check during startup that there is only a single
> > +	 * filesystem used by the sheep daemon, or find a way to iterate
> > +	 * over all of them.
> > +	 */
> 
> We use hardlink in the object directory, so the former is better.

Ok.




More information about the sheepdog mailing list