zfs + uma
Andriy Gapon
avg at freebsd.org
Mon Sep 20 18:32:02 UTC 2010
on 19/09/2010 11:27 Jeff Roberson said the following:
> On Sun, 19 Sep 2010, Andriy Gapon wrote:
>
>> on 19/09/2010 01:16 Jeff Roberson said the following:
>>> Additionally we could make a last ditch flush mechanism that runs on each cpu in
>>> turn and flushes some or all of the buckets in per-cpu caches. Presently that is
>>> not done due to synchronization issues. It can't be done from a central place.
>>> It could be done with a callout mechanism or a for loop that binds to each core
>>> in succession.
>>
>> I like all of the tree above approaches.
>> The last one is a bit hard to implement, the first two seem easier.
>
> All the last one requires is a loop calling sched_bind() on each available cpu.
Something like cache_drain() but with sched_bind() in the loop?
critical_enter() would be probably also needed to avoid preemption and conflict
while acting on cache buckets?
--
Andriy Gapon
More information about the freebsd-hackers
mailing list