[PATCH 2/5] percpu-ref: introduce percpu_ref_alive()

From: Li Zefan
Date: Thu Jun 12 2014 - 02:32:15 EST


This is used to check if the percpu_ref has been killed.

Signed-off-by: Li Zefan <lizefan@xxxxxxxxxx>
---
include/linux/percpu-refcount.h | 11 +++++++++++
1 file changed, 11 insertions(+)

diff --git a/include/linux/percpu-refcount.h b/include/linux/percpu-refcount.h
index dba35c4..1d5f2b3 100644
--- a/include/linux/percpu-refcount.h
+++ b/include/linux/percpu-refcount.h
@@ -96,6 +96,17 @@ static inline void percpu_ref_kill(struct percpu_ref *ref)
#define REF_STATUS(count) (((unsigned long) count) & PCPU_STATUS_MASK)

/**
+ * percpu_ref_alive - check if the ref has been killed
+ * @ref: percpu_ref to check
+ *
+ * Return true if percpu_ref_kill() has been called to drop the initial ref.
+ */
+static inline bool percpu_ref_alive(struct percpu_ref *ref)
+{
+ return !(REF_STATUS(ref->pcpu_count) == PCPU_REF_DEAD);
+}
+
+/**
* percpu_ref_get - increment a percpu refcount
* @ref: percpu_ref to get
*
--
1.8.0.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/