Hi, Going on Richard's advice, I've tried to write an alpha futex implementation based on the powerpc futex.h. I've gotten this far.. :\ #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg) \ __asm__ __volatile( \ "1: ldl_l %0,%2\n" \ insn \ /* something needs to happen here * to save result of insn across * stl_c? */ " stl_c %1,%2\n" \ " beq %1,2f\n" \ " mb\n" \ /* something needs to happen here * for the ret */ " .subsection 2\n" \ "2: br 1b\n" \ " .previous\n" \ : "=&r" (oldval), "=&r" (ret) \ : "b" (uaddr) \ : "memory") Could someone take a look and help finish it? For futex_atomic_cmpxchg_inatomic, I think Ivan's DRM_CAS implementation can be used with only trivial changes. See http://cgit.freedesktop.org/mesa/drm/commit/?id=6feac49398d0f037103a4ae3d5a512badeed61fb Please CC me on responses, as I'm not subscribed to linux-kernel@. Thanks, Matt Turner -- To unsubscribe from this list: send the line "unsubscribe linux-alpha" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html