Hello, Linus. This pull request contains Kent's per-cpu reference counter. It has gone through several iterations since the last time and the dynamic allocation is gone. The usual usage is relatively straight-forward although async kill confirm interface, which is not used int most cases, is somewhat icky. There also are some interface concerns - e.g. I'm not sure about passing in @relesae callback during init as that becomes funny when we later implement synchronous kill_and_drain - but nothing too serious and it's quite useable now.
cgroup_subsys_state refcnting has already been converted and we should convert module refcnt (Kent?). Please pull from the following branch to receive the per-cpu reference counter. git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu.git for-3.11 Thanks. ---------------------------------------------------------------- Kent Overstreet (2): percpu: implement generic percpu refcounting percpu-refcount: Don't use silly cmpxchg() Tejun Heo (6): percpu-refcount: consistently use plain (non-sched) RCU percpu-refcount: cosmetic updates percpu-refcount: add __must_check to percpu_ref_init() and don't use ACCESS_ONCE() in percpu_ref_kill_rcu() percpu-refcount: implement percpu_ref_cancel_init() percpu-refcount: implement percpu_tryget() along with percpu_ref_kill_and_confirm() percpu-refcount: use RCU-sched insted of normal RCU include/linux/percpu-refcount.h | 174 ++++++++++++++++++++++++++++++++++++++++ lib/Makefile | 2 +- lib/percpu-refcount.c | 158 ++++++++++++++++++++++++++++++++++++ 3 files changed, 333 insertions(+), 1 deletion(-) create mode 100644 include/linux/percpu-refcount.h create mode 100644 lib/percpu-refcount.c -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/