rseq_cs           124 include/uapi/linux/rseq.h 	} rseq_cs;
rseq_cs           115 kernel/rseq.c  static int rseq_get_rseq_cs(struct task_struct *t, struct rseq_cs *rseq_cs)
rseq_cs           117 kernel/rseq.c  	struct rseq_cs __user *urseq_cs;
rseq_cs           123 kernel/rseq.c  	if (copy_from_user(&ptr, &t->rseq->rseq_cs.ptr64, sizeof(ptr)))
rseq_cs           126 kernel/rseq.c  		memset(rseq_cs, 0, sizeof(*rseq_cs));
rseq_cs           131 kernel/rseq.c  	urseq_cs = (struct rseq_cs __user *)(unsigned long)ptr;
rseq_cs           132 kernel/rseq.c  	if (copy_from_user(rseq_cs, urseq_cs, sizeof(*rseq_cs)))
rseq_cs           135 kernel/rseq.c  	if (rseq_cs->start_ip >= TASK_SIZE ||
rseq_cs           136 kernel/rseq.c  	    rseq_cs->start_ip + rseq_cs->post_commit_offset >= TASK_SIZE ||
rseq_cs           137 kernel/rseq.c  	    rseq_cs->abort_ip >= TASK_SIZE ||
rseq_cs           138 kernel/rseq.c  	    rseq_cs->version > 0)
rseq_cs           141 kernel/rseq.c  	if (rseq_cs->start_ip + rseq_cs->post_commit_offset < rseq_cs->start_ip)
rseq_cs           144 kernel/rseq.c  	if (rseq_cs->abort_ip - rseq_cs->start_ip < rseq_cs->post_commit_offset)
rseq_cs           147 kernel/rseq.c  	usig = (u32 __user *)(unsigned long)(rseq_cs->abort_ip - sizeof(u32));
rseq_cs           207 kernel/rseq.c  	if (clear_user(&t->rseq->rseq_cs.ptr64, sizeof(t->rseq->rseq_cs.ptr64)))
rseq_cs           216 kernel/rseq.c  static bool in_rseq_cs(unsigned long ip, struct rseq_cs *rseq_cs)
rseq_cs           218 kernel/rseq.c  	return ip - rseq_cs->start_ip < rseq_cs->post_commit_offset;
rseq_cs           225 kernel/rseq.c  	struct rseq_cs rseq_cs;
rseq_cs           228 kernel/rseq.c  	ret = rseq_get_rseq_cs(t, &rseq_cs);
rseq_cs           237 kernel/rseq.c  	if (!in_rseq_cs(ip, &rseq_cs))
rseq_cs           239 kernel/rseq.c  	ret = rseq_need_restart(t, rseq_cs.flags);
rseq_cs           245 kernel/rseq.c  	trace_rseq_ip_fixup(ip, rseq_cs.start_ip, rseq_cs.post_commit_offset,
rseq_cs           246 kernel/rseq.c  			    rseq_cs.abort_ip);
rseq_cs           247 kernel/rseq.c  	instruction_pointer_set(regs, (unsigned long)rseq_cs.abort_ip);
rseq_cs           293 kernel/rseq.c  	struct rseq_cs rseq_cs;
rseq_cs           298 kernel/rseq.c  	    rseq_get_rseq_cs(t, &rseq_cs) || in_rseq_cs(ip, &rseq_cs))
rseq_cs           115 tools/testing/selftests/rseq/rseq-arm.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)		\
rseq_cs           118 tools/testing/selftests/rseq/rseq-arm.h 		"str r0, %[" __rseq_str(rseq_cs) "]\n\t"		\
rseq_cs           166 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           189 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           233 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           259 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           302 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           320 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           359 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           385 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           434 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           461 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           511 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           541 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           597 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           661 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           721 tools/testing/selftests/rseq/rseq-arm.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           786 tools/testing/selftests/rseq/rseq-arm.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           127 tools/testing/selftests/rseq/rseq-arm64.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)			\
rseq_cs           132 tools/testing/selftests/rseq/rseq-arm64.h 	"	str	" RSEQ_ASM_TMP_REG ", %[" __rseq_str(rseq_cs) "]\n"	\
rseq_cs           219 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           234 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           273 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           291 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           327 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           341 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           375 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           392 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           434 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           451 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           494 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           512 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           556 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           573 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           616 tools/testing/selftests/rseq/rseq-arm64.h 		RSEQ_ASM_STORE_RSEQ_CS(2, 1b, rseq_cs)
rseq_cs           633 tools/testing/selftests/rseq/rseq-arm64.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           121 tools/testing/selftests/rseq/rseq-mips.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs) \
rseq_cs           124 tools/testing/selftests/rseq/rseq-mips.h 		LONG_S  " $4, %[" __rseq_str(rseq_cs) "]\n\t" \
rseq_cs           173 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           194 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           238 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           262 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           305 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           323 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           362 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           386 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           435 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           460 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           510 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           536 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           592 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           653 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           713 tools/testing/selftests/rseq/rseq-mips.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3f, rseq_cs)
rseq_cs           775 tools/testing/selftests/rseq/rseq-mips.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs            67 tools/testing/selftests/rseq/rseq-ppc.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)			\
rseq_cs            74 tools/testing/selftests/rseq/rseq-ppc.h 		"std %%r17, %[" __rseq_str(rseq_cs) "]\n\t"			\
rseq_cs           124 tools/testing/selftests/rseq/rseq-ppc.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)			\
rseq_cs           128 tools/testing/selftests/rseq/rseq-ppc.h 		"stw %%r17, %[" __rseq_str(rseq_cs) "]\n\t"			\
rseq_cs           219 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           239 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           279 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           305 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           344 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           363 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           400 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           423 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           468 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           493 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           539 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           564 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           615 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           639 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           689 tools/testing/selftests/rseq/rseq-ppc.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           715 tools/testing/selftests/rseq/rseq-ppc.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           111 tools/testing/selftests/rseq/rseq-s390.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)		\
rseq_cs           114 tools/testing/selftests/rseq/rseq-s390.h 		LONG_S " %%r0, %[" __rseq_str(rseq_cs) "]\n\t"		\
rseq_cs           150 tools/testing/selftests/rseq/rseq-s390.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           169 tools/testing/selftests/rseq/rseq-s390.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           213 tools/testing/selftests/rseq/rseq-s390.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           237 tools/testing/selftests/rseq/rseq-s390.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           276 tools/testing/selftests/rseq/rseq-s390.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           292 tools/testing/selftests/rseq/rseq-s390.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           329 tools/testing/selftests/rseq/rseq-s390.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           351 tools/testing/selftests/rseq/rseq-s390.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           406 tools/testing/selftests/rseq/rseq-s390.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           430 tools/testing/selftests/rseq/rseq-s390.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs           482 tools/testing/selftests/rseq/rseq-s390.h 		RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs)
rseq_cs           538 tools/testing/selftests/rseq/rseq-s390.h 		  [rseq_cs]		"m" (__rseq_abi.rseq_cs),
rseq_cs            85 tools/testing/selftests/rseq/rseq-x86.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)		\
rseq_cs            88 tools/testing/selftests/rseq/rseq-x86.h 		"movq %%rax, " __rseq_str(rseq_cs) "\n\t"		\
rseq_cs           607 tools/testing/selftests/rseq/rseq-x86.h #define RSEQ_ASM_STORE_RSEQ_CS(label, cs_label, rseq_cs)		\
rseq_cs           609 tools/testing/selftests/rseq/rseq-x86.h 		"movl $" __rseq_str(cs_label) ", " __rseq_str(rseq_cs) "\n\t"	\
rseq_cs           143 tools/testing/selftests/rseq/rseq.h 	__rseq_abi.rseq_cs.ptr = 0;
rseq_cs           145 tools/testing/selftests/rseq/rseq.h 	__rseq_abi.rseq_cs.ptr.ptr32 = 0;