xref: /linux/arch/s390/include/asm/uprobes.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
22a0a5b22SJan Willeke /*
32a0a5b22SJan Willeke  *    User-space Probes (UProbes) for s390
42a0a5b22SJan Willeke  *
52a0a5b22SJan Willeke  *    Copyright IBM Corp. 2014
62a0a5b22SJan Willeke  *    Author(s): Jan Willeke,
72a0a5b22SJan Willeke  */
82a0a5b22SJan Willeke 
92a0a5b22SJan Willeke #ifndef _ASM_UPROBES_H
102a0a5b22SJan Willeke #define _ASM_UPROBES_H
112a0a5b22SJan Willeke 
122a0a5b22SJan Willeke #include <linux/notifier.h>
132a0a5b22SJan Willeke 
142a0a5b22SJan Willeke typedef u16 uprobe_opcode_t;
152a0a5b22SJan Willeke 
162a0a5b22SJan Willeke #define UPROBE_XOL_SLOT_BYTES	256 /* cache aligned */
172a0a5b22SJan Willeke 
182a0a5b22SJan Willeke #define UPROBE_SWBP_INSN	0x0002
192a0a5b22SJan Willeke #define UPROBE_SWBP_INSN_SIZE	2
202a0a5b22SJan Willeke 
212a0a5b22SJan Willeke struct arch_uprobe {
222a0a5b22SJan Willeke 	union{
232a0a5b22SJan Willeke 		uprobe_opcode_t insn[3];
242a0a5b22SJan Willeke 		uprobe_opcode_t ixol[3];
252a0a5b22SJan Willeke 	};
262a0a5b22SJan Willeke 	unsigned int saved_per : 1;
272a0a5b22SJan Willeke 	unsigned int saved_int_code;
282a0a5b22SJan Willeke };
292a0a5b22SJan Willeke 
302a0a5b22SJan Willeke struct arch_uprobe_task {
312a0a5b22SJan Willeke };
322a0a5b22SJan Willeke 
332a0a5b22SJan Willeke #endif	/* _ASM_UPROBES_H */
34