Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752711AbbBMFua (ORCPT ); Fri, 13 Feb 2015 00:50:30 -0500 Received: from szxga02-in.huawei.com ([119.145.14.65]:34622 "EHLO szxga02-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752598AbbBMFuY (ORCPT ); Fri, 13 Feb 2015 00:50:24 -0500 From: Wang Nan To: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , CC: , , , Subject: [RFC PATCH v3 00/26] Early kprobe: enable kprobes at very early booting stage. Date: Fri, 13 Feb 2015 13:39:01 +0800 Message-ID: <1423805941-61407-1-git-send-email-wangnan0@huawei.com> X-Mailer: git-send-email 1.8.4 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.107.197.247] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3028 Lines: 62 I fell very sorry for people who reviewed my v2 patch series yesterday at https://lkml.org/lkml/2015/2/12/234 because I didn't provide enough information in commit log. This v3 patch series add those missing commit messages. There are also 2 small fix based on v2: 1. Fixes ftrace_sort_mcount_area. Original patch doesn't work for module. 2. Wraps setting of kprobes_initialized in stop_machine() context. Wang Nan (26): kprobes: set kprobes_all_disarmed earlier to enable re-optimization. kprobes: makes kprobes/enabled works correctly for optimized kprobes. kprobes: x86: mark 2 bytes NOP as boostable. ftrace: don't update record flags if code modification fail. ftrace/x86: Ensure rec->flags no change when failure occures. ftrace: sort ftrace entries earlier. ftrace: allow search ftrace addr before ftrace fully inited. ftrace: enable make ftrace nop before ftrace_init(). ftrace: allow fixing code update failure by notifier chain. ftrace: x86: try to fix ftrace when ftrace_replace_code. early kprobes: introduce kprobe_is_early for futher early kprobe use. early kprobes: Add an KPROBE_FLAG_EARLY for early kprobe. early kprobes: ARM: directly modify code. early kprobes: ARM: introduce early kprobes related code area. early kprobes: x86: directly modify code. early kprobes: x86: introduce early kprobes related code area. early kprobes: introduces macros for allocing early kprobe resources. early kprobes: allows __alloc_insn_slot() from early kprobes slots. early kprobes: perhibit probing at early kprobe reserved area. early kprobes: core logic of eraly kprobes. early kprobes: add CONFIG_EARLY_KPROBES option. early kprobes: introduce arch_fix_ftrace_early_kprobe(). early kprobes: x86: arch_restore_optimized_kprobe(). early kprobes: core logic to support early kprobe on ftrace. early kprobes: introduce kconfig option to support early kprobe on ftrace. kprobes: enable 'ekprobe=' cmdline option for early kprobes. arch/Kconfig | 15 ++ arch/arm/include/asm/kprobes.h | 31 ++- arch/arm/kernel/vmlinux.lds.S | 2 + arch/arm/probes/kprobes/opt-arm.c | 12 +- arch/x86/include/asm/insn.h | 7 +- arch/x86/include/asm/kprobes.h | 47 +++- arch/x86/kernel/ftrace.c | 23 +- arch/x86/kernel/kprobes/core.c | 2 +- arch/x86/kernel/kprobes/opt.c | 69 +++++- arch/x86/kernel/vmlinux.lds.S | 2 + include/linux/ftrace.h | 37 +++ include/linux/kprobes.h | 132 +++++++++++ init/main.c | 1 + kernel/kprobes.c | 479 +++++++++++++++++++++++++++++++++++++- kernel/trace/ftrace.c | 157 +++++++++++-- 15 files changed, 969 insertions(+), 47 deletions(-) -- 1.8.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/