• Masami Hiramatsu's avatar
    kprobes/x86-32: Move irq-exit functions to kprobes section · a00e817f
    Masami Hiramatsu authored
    Move irq-exit functions to .kprobes.text section to protect against
    kprobes recursion.
    
    When I ran kprobe stress test on x86-32, I found below symbols
    cause unrecoverable recursive probing:
    
    	ret_from_exception
    	ret_from_intr
    	check_userspace
    	restore_all
    	restore_all_notrace
    	restore_nocheck
    	irq_return
    
    And also, I found some interrupt/exception entry points that
    cause similar problems.
    
    This patch moves those symbols (including their container functions)
    to .kprobes.text section to prevent any kprobes probing.
    Signed-off-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
    Cc: Jim Keniston <jkenisto@us.ibm.com>
    Cc: Ingo Molnar <mingo@elte.hu>
    LKML-Reference: <20090908164755.24050.81182.stgit@dhcp-100-2-132.bos.redhat.com>
    Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
    a00e817f
kprobes.c 37.7 KB