[PATCH] drm: Replace kref with a simple atomic reference count
Chris Wilson
chris at chris-wilson.co.uk
Thu Nov 25 14:44:04 PST 2010
On Fri, 26 Nov 2010 08:38:29 +1000, Dave Airlie <airlied at redhat.com> wrote:
> On Thu, 2010-11-25 at 21:40 +0000, Chris Wilson wrote:
> > For a deferred-free cache of unreferenced bound objects, a simple
> > reference count is required without the baggage of kref.
>
> eh?
The issue with kref is that it does:
void kref_get(struct kref *kref)
{
WARN_ON(!atomic_read(&kref->refcount));
atomic_inc(&kref->refcount);
smp_mb__after_atomic_inc();
}
which causes havoc when you are trying to keep a list of unreferenced
objects. That's all I'm trying to avoid.
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the dri-devel
mailing list