lkml.org 
[lkml]   [2008]   [Feb]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: IO queueing and complete affinity w/ threads: Some results
On Tue, Feb 19 2008, Mike Travis wrote:
> Paul Jackson wrote:
> > Jens wrote:
> >> My main worry with the current code is the ->lock in the per-cpu
> >> completion structure.
> >
> > Drive-by-comment here: Does the patch posted later this same day by Mike Travis:
> >
> > [PATCH 0/2] percpu: Optimize percpu accesses v3
> >
> > help with this lock issue any? (I have no real clue here -- just connecting
> > up the pretty colored dots ;).
> >
>
> I'm not sure of the context here but a big motivation for doing the
> zero-based per_cpu variables was to optimize access to the local
> per cpu variables to one instruction, reducing the need for locks.

I'm afraid the two things aren't related, although faster access to
per-cpu is of course a benefit for this as well. My expressed concern
was the:

spin_lock(&bc->lock);
was_empty = list_empty(&bc->list);
list_add_tail(&req->donelist, &bc->list);
spin_unlock(&bc->lock);

where 'bc' may be per-cpu data of another CPU

--
Jens Axboe



\
 
 \ /
  Last update: 2008-02-20 09:11    [from the cache]
©2003-2011 Jasper Spaans. Advertise on this site