[PATCH -tip v11 21/27] ia64: Add instruction_pointer_set() API
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- To: Steven Rostedt <rostedt@xxxxxxxxxxx>, Josh Poimboeuf <jpoimboe@xxxxxxxxxx>, Ingo Molnar <mingo@xxxxxxxxxx>
- Subject: [PATCH -tip v11 21/27] ia64: Add instruction_pointer_set() API
- From: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
- Date: Tue, 14 Sep 2021 23:41:52 +0900
- Cc: X86 ML <x86@xxxxxxxxxx>, Masami Hiramatsu <mhiramat@xxxxxxxxxx>, Daniel Xu <dxu@xxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, bpf@xxxxxxxxxxxxxxx, kuba@xxxxxxxxxx, mingo@xxxxxxxxxx, ast@xxxxxxxxxx, Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Borislav Petkov <bp@xxxxxxxxx>, Peter Zijlstra <peterz@xxxxxxxxxxxxx>, kernel-team@xxxxxx, yhs@xxxxxx, linux-ia64@xxxxxxxxxxxxxxx, Abhishek Sagar <sagar.abhishek@xxxxxxxxx>, Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx>, Paul McKenney <paulmck@xxxxxxxxxx>
- In-reply-to: <163163030719.489837.2236069935502195491.stgit@devnote2>
- References: <163163030719.489837.2236069935502195491.stgit@devnote2>
- User-agent: StGit/0.19
Add instruction_pointer_set() API for ia64.
Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
---
Changes in v9:
- Fix "space at the start of a line" checkpatch warnings.
Changes in v4:
- Make the API macro for avoiding a build error.
---
arch/ia64/include/asm/ptrace.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/arch/ia64/include/asm/ptrace.h b/arch/ia64/include/asm/ptrace.h
index 08179135905c..8a2d0f72b324 100644
--- a/arch/ia64/include/asm/ptrace.h
+++ b/arch/ia64/include/asm/ptrace.h
@@ -51,6 +51,11 @@
* the canonical representation by adding to instruction pointer.
*/
# define instruction_pointer(regs) ((regs)->cr_iip + ia64_psr(regs)->ri)
+# define instruction_pointer_set(regs, val) \
+({ \
+ ia64_psr(regs)->ri = (val & 0xf); \
+ regs->cr_iip = (val & ~0xfULL); \
+})
static inline unsigned long user_stack_pointer(struct pt_regs *regs)
{
[Index of Archives]
[Linux Kernel]
[Sparc Linux]
[DCCP]
[Linux ARM]
[Yosemite News]
[Linux SCSI]
[Linux x86_64]
[Linux for Ham Radio]