Re: [PATCH v2 0/3] staging: zcache: xcfmalloc support

Nitin Gupta
2011-10-03T17:54:35Z

Hi Dave,

On 10/03/2011 11:59 AM, Dave Hansen wrote:

>
> I've been reading through Seth's patches a bit and looking over the
> locking in general. I'm wondering why preempt_disable() is used so
> heavily. Preempt seems to be disabled for virtually all of zcache's
> operations. It seems a bit unorthodox, and I guess I'm anticipating the
> future screams of the low-latency folks. :)
>
> I think long-term it will hurt zcache's ability to move in to other
> code. Right now, it's pretty limited to being used in conjunction with
> memory reclaim called from kswapd. Seems like something we ought to add
> to the TODO list before it escapes from staging/.
>

I think disabling preemption on the local CPU is the cheapest we can get
to protect PCPU buffers. We may experiment with, say, multiple buffers
per CPU, so we end up disabling preemption only in highly improbable
case of getting preempted just too many times exactly within critical
section. But before we do all that, we really need to come up with cases
where zcache induced latency is/can be a problem.

Thanks,
Nitin