Subject: Re: Pull request for FS-Cache, including NFS patches

From: Ric Wheeler <[email-masked]>
Date: Mon, 29 Dec 2008 09:54:58 -0500

Trond Myklebust wrote:
> On Sun, 2008-12-28 at 20:01 -0800, Andrew Morton wrote:
>   
>> On Mon, 29 Dec 2008 14:45:33 +1100 Stephen Rothwell <[email-masked]> wrote:
>>
>>     
>>> Hi David,
>>>
>>> On Fri, 19 Dec 2008 11:05:39 +1100 Stephen Rothwell <[email-masked]> wrote:
>>>       
>>>> Given the ongoing discussions around FS-Cache, I have removed it from
>>>> linux-next.  Please ask me to include it again (if sensible) once some
>>>> decision has been reached about its future.
>>>>         
>>> What was the result of discussions around FS-Cache?
>>>       
>> There was none.
>>
>> Dan Muntz's question:
>>
>>   Solaris has had CacheFS since ~1995, HPUX had a port of it since
>>   ~1997.  I'd be interested in evidence of even a small fraction of
>>   Solaris and/or HPUX shops using CacheFS.  I am aware of customers who
>>   thought it sounded like a good idea, but ended up ditching it for
>>   various reasons (e.g., CacheFS just adds overhead if you almost
>>   always hit your local mem cache).
>>
>> was an very very good one.
>>
>> Seems that instead of answering it, we've decided to investigate the
>> fate of those who do not learn from history.
>>     
>
> David has given you plenty of arguments for why it helps scale the
> server (including specific workloads), has given you numbers validating
> his claim, and has presented claims that Red Hat has customers using
> cachefs in RHEL-5.
> The arguments I've seen against it, have so far been:
>
>      1. Solaris couldn't sell their implementation
>      2. It's too big
>      3. It's intrusive
>
> Argument (1) has so far appeared to be pure FUD. In order to discuss the
> lessons of history, you need to first do the work of analysing and
> understanding it first. I really don't see how it is relevant to Linux
> whether or not the Solaris and HPUX cachefs implementations worked out
> unless you can demonstrate that that their experience shows some fatal
> flaw in the arguments and numbers that David presented, and that his
> customers are deluded.
> If you want examples of permanent caches that clearly do help servers
> scale, then look no further than the on-disk caches used in almost all
> http browser implemantations. Alternatively, as David mentioned, there
> are the on-disk caches used by AFS/DFS/coda.
>   

I can add that our Red Hat customers who tried the cachefs preview did 
find it useful for their workloads (and, by the way, also use the 
Solaris cachefs on solaris boxes if I remember correctly).  They have 
been nagging me and others at Red Hat about getting it into supported 
state for quite a while :-)

As you point out, this is all about getting more clients to be driven by 
a set of NFS servers.

Regards,

Ric

> (2) may be valid, but I have yet to see specifics for where you'd like
> to see the cachefs code slimmed down. Did I miss them?
>
> (3) was certainly true 3 years ago, when the code was first presented
> for review, and so we did a review and critique then. The NFS specific
> changes have improved greatly as a result, and as far as I know, the
> security folks are happy too. If you're not happy with the parts that
> affect the memory management code then, again, it would be useful to see
> specifics that what you want changed.
>
> If there is still controversy concerning this, then I can temporarily
> remove cachefs from the nfs linux-next branch, but I'm definitely
> keeping it in the linux-mm branch until someone gives me a reason for
> why it shouldn't be merged in its current state.
>
> Trond
>
>