Those were my sentiments exactly:
16:21 * mochel searches for atomic_inc_and_read() :)
It seems like the following should work. Would someone mind commenting on
it?
Thanks,
-pat
===== include/asm/atomic.h 1.4 vs edited =====
--- 1.4/include/asm-i386/atomic.h Mon Feb 4 23:42:13 2002
+++ edited/include/asm/atomic.h Thu Jun 12 16:32:10 2003
@@ -110,6 +110,23 @@
:"m" (v->counter));
}
+
+/**
+ * atomic_inc_and_read - increment atomic variable and return new value
+ * @v: pointer of type atomic_t
+ *
+ * Atomically increments @v by 1. Note that the guaranteed
+ * useful range of an atomic_t is only 24 bits.
+ */
+static inline int atomic_inc_and_read(atomic_t *v)
+{
+ __asm__ __volatile__(
+ LOCK "incl %0"
+ :"=m" (v->counter)
+ :"m" (v->counter));
+ return v->counter;
+}
+
/**
* atomic_dec - decrement atomic variable
* @v: pointer of type atomic_t
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/