[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <150304456422.17009.11803713159528262211.stgit@devbox>
Date: Fri, 18 Aug 2017 17:22:54 +0900
From: Masami Hiramatsu <mhiramat@...nel.org>
To: Ingo Molnar <mingo@...nel.org>
Cc: Ingo Molnar <mingo@...hat.com>, "H . Peter Anvin" <hpa@...or.com>,
x86@...nel.org, Masami Hiramatsu <mhiramat@...nel.org>,
Ananth N Mavinakayanahalli <ananth@...ibm.com>,
Anil S Keshavamurthy <anil.s.keshavamurthy@...el.com>,
"David S . Miller" <davem@...emloft.net>,
linux-kernel@...r.kernel.org
Subject: [PATCH -tip v3 0/2] kprobes/x86: Another way to make insn buffer RO and cleanup
Hi,
This series modifies how to handle RO insn buffer and
cleans up addressof operators.
The 1st patch changes the RO insn buffer handling: instead
of using set_memory_ro/rw to modify the buffer, it prepares
new instructions in another buffer and write it with
text_poke() as suggested by Ingo Molnar (Thanks!).
Since the text_poke() is safely modifying code by
mapping alias pages, it can write RO pages.
This also override alloc_insn_page() so that it returns
ROX page directly.
The 2nd one is not changed. It is a cleanup patch
to remove addressof operators ("&") since
it is meaningless anymore.
V3 has just a following update:
- [1/2] Not to just add set_memory_ro(), introduce new
patch to change the way to handle RO pages.
Thanks,
---
Masami Hiramatsu (2):
kprobes/x86: Make insn buffer always ROX and use text_poke
kprobes/x86: Remove addressof operators
arch/x86/include/asm/kprobes.h | 4 +-
arch/x86/kernel/kprobes/common.h | 6 ++-
arch/x86/kernel/kprobes/core.c | 61 +++++++++++++++++++++------------
arch/x86/kernel/kprobes/opt.c | 71 +++++++++++++++++++++-----------------
kernel/kprobes.c | 2 +
5 files changed, 86 insertions(+), 58 deletions(-)
--
Masami Hiramatsu <mhiramat@...nel.org>
Powered by blists - more mailing lists