oparg              12 arch/alpha/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg)	\
oparg              26 arch/alpha/include/asm/futex.h 	:	"r" (uaddr), "r"(oparg)				\
oparg              29 arch/alpha/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              38 arch/alpha/include/asm/futex.h 		__futex_atomic_op("mov %3,%1\n", ret, oldval, uaddr, oparg);
oparg              41 arch/alpha/include/asm/futex.h 		__futex_atomic_op("addl %0,%3,%1\n", ret, oldval, uaddr, oparg);
oparg              44 arch/alpha/include/asm/futex.h 		__futex_atomic_op("or %0,%3,%1\n", ret, oldval, uaddr, oparg);
oparg              47 arch/alpha/include/asm/futex.h 		__futex_atomic_op("andnot %0,%3,%1\n", ret, oldval, uaddr, oparg);
oparg              50 arch/alpha/include/asm/futex.h 		__futex_atomic_op("xor %0,%3,%1\n", ret, oldval, uaddr, oparg);
oparg              18 arch/arc/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg)\
oparg              40 arch/arc/include/asm/futex.h 	: "r" (uaddr), "r" (oparg), "ir" (-EFAULT)	\
oparg              46 arch/arc/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg)\
oparg              67 arch/arc/include/asm/futex.h 	: "r" (uaddr), "r" (oparg), "ir" (-EFAULT)	\
oparg              73 arch/arc/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              85 arch/arc/include/asm/futex.h 		__futex_atomic_op("mov %0, %3", ret, oldval, uaddr, oparg);
oparg              89 arch/arc/include/asm/futex.h 		__futex_atomic_op("add %0, %1, %3", ret, oldval, uaddr, oparg);
oparg              92 arch/arc/include/asm/futex.h 		__futex_atomic_op("or  %0, %1, %3", ret, oldval, uaddr, oparg);
oparg              95 arch/arc/include/asm/futex.h 		__futex_atomic_op("bic %0, %1, %3", ret, oldval, uaddr, oparg);
oparg              98 arch/arc/include/asm/futex.h 		__futex_atomic_op("xor %0, %1, %3", ret, oldval, uaddr, oparg);
oparg              25 arch/arm/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, tmp, uaddr, oparg)	\
oparg              40 arch/arm/include/asm/futex.h 	: "r" (uaddr), "r" (oparg), "Ir" (-EFAULT)		\
oparg              84 arch/arm/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, tmp, uaddr, oparg)	\
oparg              94 arch/arm/include/asm/futex.h 	: "r" (uaddr), "r" (oparg), "Ir" (-EFAULT)		\
oparg             133 arch/arm/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg             144 arch/arm/include/asm/futex.h 		__futex_atomic_op("mov	%0, %4", ret, oldval, tmp, uaddr, oparg);
oparg             147 arch/arm/include/asm/futex.h 		__futex_atomic_op("add	%0, %1, %4", ret, oldval, tmp, uaddr, oparg);
oparg             150 arch/arm/include/asm/futex.h 		__futex_atomic_op("orr	%0, %1, %4", ret, oldval, tmp, uaddr, oparg);
oparg             153 arch/arm/include/asm/futex.h 		__futex_atomic_op("and	%0, %1, %4", ret, oldval, tmp, uaddr, ~oparg);
oparg             156 arch/arm/include/asm/futex.h 		__futex_atomic_op("eor	%0, %1, %4", ret, oldval, tmp, uaddr, oparg);
oparg              15 arch/arm64/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, tmp, oparg)		\
oparg              40 arch/arm64/include/asm/futex.h 	: "r" (oparg), "Ir" (-EFAULT), "Ir" (-EAGAIN)			\
oparg              46 arch/arm64/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *_uaddr)
oparg              56 arch/arm64/include/asm/futex.h 				  ret, oldval, uaddr, tmp, oparg);
oparg              60 arch/arm64/include/asm/futex.h 				  ret, oldval, uaddr, tmp, oparg);
oparg              64 arch/arm64/include/asm/futex.h 				  ret, oldval, uaddr, tmp, oparg);
oparg              68 arch/arm64/include/asm/futex.h 				  ret, oldval, uaddr, tmp, ~oparg);
oparg              72 arch/arm64/include/asm/futex.h 				  ret, oldval, uaddr, tmp, oparg);
oparg              13 arch/hexagon/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg) \
oparg              30 arch/hexagon/include/asm/futex.h 	: "r" (uaddr), "r" (oparg), "i" (-EFAULT) \
oparg              35 arch/hexagon/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              43 arch/hexagon/include/asm/futex.h 		__futex_atomic_op("%1 = %4\n", ret, oldval, uaddr, oparg);
oparg              47 arch/hexagon/include/asm/futex.h 				  oparg);
oparg              51 arch/hexagon/include/asm/futex.h 				  oparg);
oparg              55 arch/hexagon/include/asm/futex.h 				  oldval, uaddr, oparg);
oparg              59 arch/hexagon/include/asm/futex.h 				  oparg);
oparg               9 arch/ia64/include/asm/futex.h #define __futex_atomic_op1(insn, ret, oldval, uaddr, oparg) \
oparg              18 arch/ia64/include/asm/futex.h 		: "r" (uaddr), "r" (oparg)				\
oparg              23 arch/ia64/include/asm/futex.h #define __futex_atomic_op2(insn, ret, oldval, uaddr, oparg) \
oparg              40 arch/ia64/include/asm/futex.h 			: "r" (uaddr), "r" (oparg)			\
oparg              49 arch/ia64/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              58 arch/ia64/include/asm/futex.h 				   oparg);
oparg              61 arch/ia64/include/asm/futex.h 		__futex_atomic_op2("add %3=%3,%5", ret, oldval, uaddr, oparg);
oparg              64 arch/ia64/include/asm/futex.h 		__futex_atomic_op2("or %3=%3,%5", ret, oldval, uaddr, oparg);
oparg              68 arch/ia64/include/asm/futex.h 				   ~oparg);
oparg              71 arch/ia64/include/asm/futex.h 		__futex_atomic_op2("xor %3=%3,%5", ret, oldval, uaddr, oparg);
oparg              11 arch/microblaze/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg) \
oparg              28 arch/microblaze/include/asm/futex.h 	: "r" (uaddr), "i" (-EFAULT), "r" (oparg)			\
oparg              33 arch/microblaze/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              41 arch/microblaze/include/asm/futex.h 		__futex_atomic_op("or %1,%4,%4;", ret, oldval, uaddr, oparg);
oparg              44 arch/microblaze/include/asm/futex.h 		__futex_atomic_op("add %1,%0,%4;", ret, oldval, uaddr, oparg);
oparg              47 arch/microblaze/include/asm/futex.h 		__futex_atomic_op("or %1,%0,%4;", ret, oldval, uaddr, oparg);
oparg              50 arch/microblaze/include/asm/futex.h 		__futex_atomic_op("andn %1,%0,%4;", ret, oldval, uaddr, oparg);
oparg              53 arch/microblaze/include/asm/futex.h 		__futex_atomic_op("xor %1,%0,%4;", ret, oldval, uaddr, oparg);
oparg              21 arch/mips/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg)		\
oparg              49 arch/mips/include/asm/futex.h 		: "0" (0), GCC_OFF_SMALL_ASM() (*uaddr), "Jr" (oparg),	\
oparg              79 arch/mips/include/asm/futex.h 		: "0" (0), GCC_OFF_SMALL_ASM() (*uaddr), "Jr" (oparg),	\
oparg              87 arch/mips/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              95 arch/mips/include/asm/futex.h 		__futex_atomic_op("move $1, %z5", ret, oldval, uaddr, oparg);
oparg             100 arch/mips/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg             104 arch/mips/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg             108 arch/mips/include/asm/futex.h 				  ret, oldval, uaddr, ~oparg);
oparg             112 arch/mips/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              22 arch/nds32/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, tmp, uaddr, oparg)	\
oparg              34 arch/nds32/include/asm/futex.h 	: "r" (uaddr), "r" (oparg), "i" (-EFAULT)		\
oparg              65 arch/nds32/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              74 arch/nds32/include/asm/futex.h 				  oparg);
oparg              78 arch/nds32/include/asm/futex.h 				  oparg);
oparg              82 arch/nds32/include/asm/futex.h 				  oparg);
oparg              86 arch/nds32/include/asm/futex.h 				  ~oparg);
oparg              90 arch/nds32/include/asm/futex.h 				  oparg);
oparg              11 arch/openrisc/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg) \
oparg              28 arch/openrisc/include/asm/futex.h 		: "i" (-EFAULT), "r" (oparg)			\
oparg              34 arch/openrisc/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              42 arch/openrisc/include/asm/futex.h 		__futex_atomic_op("l.or %1,%4,%4", ret, oldval, uaddr, oparg);
oparg              45 arch/openrisc/include/asm/futex.h 		__futex_atomic_op("l.add %1,%0,%4", ret, oldval, uaddr, oparg);
oparg              48 arch/openrisc/include/asm/futex.h 		__futex_atomic_op("l.or %1,%0,%4", ret, oldval, uaddr, oparg);
oparg              51 arch/openrisc/include/asm/futex.h 		__futex_atomic_op("l.and %1,%0,%4", ret, oldval, uaddr, ~oparg);
oparg              54 arch/openrisc/include/asm/futex.h 		__futex_atomic_op("l.xor %1,%0,%4", ret, oldval, uaddr, oparg);
oparg              36 arch/parisc/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              54 arch/parisc/include/asm/futex.h 		tmp = oparg;
oparg              57 arch/parisc/include/asm/futex.h 		tmp += oparg;
oparg              60 arch/parisc/include/asm/futex.h 		tmp |= oparg;
oparg              63 arch/parisc/include/asm/futex.h 		tmp &= ~oparg;
oparg              66 arch/parisc/include/asm/futex.h 		tmp ^= oparg;
oparg              13 arch/powerpc/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg) \
oparg              30 arch/powerpc/include/asm/futex.h 	: "b" (uaddr), "i" (-EFAULT), "r" (oparg) \
oparg              33 arch/powerpc/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              43 arch/powerpc/include/asm/futex.h 		__futex_atomic_op("mr %1,%4\n", ret, oldval, uaddr, oparg);
oparg              46 arch/powerpc/include/asm/futex.h 		__futex_atomic_op("add %1,%0,%4\n", ret, oldval, uaddr, oparg);
oparg              49 arch/powerpc/include/asm/futex.h 		__futex_atomic_op("or %1,%0,%4\n", ret, oldval, uaddr, oparg);
oparg              52 arch/powerpc/include/asm/futex.h 		__futex_atomic_op("andc %1,%0,%4\n", ret, oldval, uaddr, oparg);
oparg              55 arch/powerpc/include/asm/futex.h 		__futex_atomic_op("xor %1,%0,%4\n", ret, oldval, uaddr, oparg);
oparg              15 arch/riscv/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, uaddr, oparg)	\
oparg              33 arch/riscv/include/asm/futex.h 	: [op] "Jr" (oparg), [e] "i" (-EFAULT)			\
oparg              39 arch/riscv/include/asm/futex.h arch_futex_atomic_op_inuser(int op, int oparg, int *oval, u32 __user *uaddr)
oparg              48 arch/riscv/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              52 arch/riscv/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              56 arch/riscv/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              60 arch/riscv/include/asm/futex.h 				  ret, oldval, uaddr, ~oparg);
oparg              64 arch/riscv/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              10 arch/s390/include/asm/futex.h #define __futex_atomic_op(insn, ret, oldval, newval, uaddr, oparg)	\
oparg              22 arch/s390/include/asm/futex.h 		: "0" (-EFAULT), "d" (oparg), "a" (uaddr),		\
oparg              25 arch/s390/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              36 arch/s390/include/asm/futex.h 				  ret, oldval, newval, uaddr, oparg);
oparg              40 arch/s390/include/asm/futex.h 				  ret, oldval, newval, uaddr, oparg);
oparg              44 arch/s390/include/asm/futex.h 				  ret, oldval, newval, uaddr, oparg);
oparg              48 arch/s390/include/asm/futex.h 				  ret, oldval, newval, uaddr, oparg);
oparg              52 arch/s390/include/asm/futex.h 				  ret, oldval, newval, uaddr, oparg);
oparg              31 arch/sh/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, u32 oparg, int *oval,
oparg              46 arch/sh/include/asm/futex.h 			newval = oparg;
oparg              49 arch/sh/include/asm/futex.h 			newval = oldval + oparg;
oparg              52 arch/sh/include/asm/futex.h 			newval = oldval | oparg;
oparg              55 arch/sh/include/asm/futex.h 			newval = oldval & ~oparg;
oparg              58 arch/sh/include/asm/futex.h 			newval = oldval ^ oparg;
oparg               9 arch/sparc/include/asm/futex_64.h #define __futex_cas_op(insn, ret, oldval, uaddr, oparg)	\
oparg              30 arch/sparc/include/asm/futex_64.h 	: "r" (uaddr), "r" (oparg), "i" (-EFAULT)	\
oparg              33 arch/sparc/include/asm/futex_64.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              45 arch/sparc/include/asm/futex_64.h 		__futex_cas_op("mov\t%4, %1", ret, oldval, uaddr, oparg);
oparg              48 arch/sparc/include/asm/futex_64.h 		__futex_cas_op("add\t%2, %4, %1", ret, oldval, uaddr, oparg);
oparg              51 arch/sparc/include/asm/futex_64.h 		__futex_cas_op("or\t%2, %4, %1", ret, oldval, uaddr, oparg);
oparg              54 arch/sparc/include/asm/futex_64.h 		__futex_cas_op("andn\t%2, %4, %1", ret, oldval, uaddr, oparg);
oparg              57 arch/sparc/include/asm/futex_64.h 		__futex_cas_op("xor\t%2, %4, %1", ret, oldval, uaddr, oparg);
oparg              15 arch/x86/include/asm/futex.h #define __futex_atomic_op1(insn, ret, oldval, uaddr, oparg)	\
oparg              25 arch/x86/include/asm/futex.h 		     : "i" (-EFAULT), "0" (oparg), "1" (0))
oparg              27 arch/x86/include/asm/futex.h #define __futex_atomic_op2(insn, ret, oldval, uaddr, oparg)	\
oparg              43 arch/x86/include/asm/futex.h 		     : "r" (oparg), "i" (-EFAULT), "1" (0))
oparg              45 arch/x86/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              54 arch/x86/include/asm/futex.h 		__futex_atomic_op1("xchgl %0, %2", ret, oldval, uaddr, oparg);
oparg              58 arch/x86/include/asm/futex.h 				   uaddr, oparg);
oparg              61 arch/x86/include/asm/futex.h 		__futex_atomic_op2("orl %4, %3", ret, oldval, uaddr, oparg);
oparg              64 arch/x86/include/asm/futex.h 		__futex_atomic_op2("andl %4, %3", ret, oldval, uaddr, ~oparg);
oparg              67 arch/x86/include/asm/futex.h 		__futex_atomic_op2("xorl %4, %3", ret, oldval, uaddr, oparg);
oparg              40 arch/xtensa/include/asm/futex.h 	: [addr] "r" (uaddr), [oparg] "r" (arg),	\
oparg              64 arch/xtensa/include/asm/futex.h 	: [addr] "r" (uaddr), [oparg] "r" (arg),	\
oparg              69 arch/xtensa/include/asm/futex.h static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
oparg              80 arch/xtensa/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              84 arch/xtensa/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              88 arch/xtensa/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              92 arch/xtensa/include/asm/futex.h 				  ret, oldval, uaddr, ~oparg);
oparg              96 arch/xtensa/include/asm/futex.h 				  ret, oldval, uaddr, oparg);
oparg              31 include/asm-generic/futex.h arch_futex_atomic_op_inuser(int op, u32 oparg, int *oval, u32 __user *uaddr)
oparg              48 include/asm-generic/futex.h 		tmp = oparg;
oparg              51 include/asm-generic/futex.h 		tmp += oparg;
oparg              54 include/asm-generic/futex.h 		tmp |= oparg;
oparg              57 include/asm-generic/futex.h 		tmp &= ~oparg;
oparg              60 include/asm-generic/futex.h 		tmp ^= oparg;
oparg             119 include/asm-generic/futex.h arch_futex_atomic_op_inuser(int op, u32 oparg, int *oval, u32 __user *uaddr)
oparg             149 include/uapi/linux/futex.h #define FUTEX_OP(op, oparg, cmp, cmparg) \
oparg             151 include/uapi/linux/futex.h    | ((oparg & 0xfff) << 12) | (cmparg & 0xfff))
oparg            1724 kernel/futex.c 	int oparg = sign_extend32((encoded_op & 0x00fff000) >> 12, 11);
oparg            1729 kernel/futex.c 		if (oparg < 0 || oparg > 31) {
oparg            1736 kernel/futex.c 					get_task_comm(comm, current), oparg);
oparg            1737 kernel/futex.c 			oparg &= 31;
oparg            1739 kernel/futex.c 		oparg = 1 << oparg;
oparg            1745 kernel/futex.c 	ret = arch_futex_atomic_op_inuser(op, oparg, &oldval, uaddr);