18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci *    User-space Probes (UProbes) for s390
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci *    Copyright IBM Corp. 2014
68c2ecf20Sopenharmony_ci *    Author(s): Jan Willeke,
78c2ecf20Sopenharmony_ci */
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci#ifndef _ASM_UPROBES_H
108c2ecf20Sopenharmony_ci#define _ASM_UPROBES_H
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci#include <linux/notifier.h>
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_citypedef u16 uprobe_opcode_t;
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci#define UPROBE_XOL_SLOT_BYTES	256 /* cache aligned */
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci#define UPROBE_SWBP_INSN	0x0002
198c2ecf20Sopenharmony_ci#define UPROBE_SWBP_INSN_SIZE	2
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_cistruct arch_uprobe {
228c2ecf20Sopenharmony_ci	union{
238c2ecf20Sopenharmony_ci		uprobe_opcode_t insn[3];
248c2ecf20Sopenharmony_ci		uprobe_opcode_t ixol[3];
258c2ecf20Sopenharmony_ci	};
268c2ecf20Sopenharmony_ci	unsigned int saved_per : 1;
278c2ecf20Sopenharmony_ci	unsigned int saved_int_code;
288c2ecf20Sopenharmony_ci};
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_cistruct arch_uprobe_task {
318c2ecf20Sopenharmony_ci};
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci#endif	/* _ASM_UPROBES_H */
34