• Pratyush Anand's avatar
    arm64: kprobe: protect/rename few definitions to be reused by uprobe · c2249707
    Pratyush Anand authored
    decode-insn code has to be reused by arm64 uprobe implementation as well.
    Therefore, this patch protects some portion of kprobe code and renames few
    other, so that decode-insn functionality can be reused by uprobe even when
    CONFIG_KPROBES is not defined.
    
    kprobe_opcode_t and struct arch_specific_insn are also defined by
    linux/kprobes.h, when CONFIG_KPROBES is not defined. So, protect these
    definitions in asm/probes.h.
    
    linux/kprobes.h already includes asm/kprobes.h. Therefore, remove inclusion
    of asm/kprobes.h from decode-insn.c.
    
    There are some definitions like kprobe_insn and kprobes_handler_t etc can
    be re-used by uprobe. So, it would be better to remove 'k' from their
    names.
    
    struct arch_specific_insn is specific to kprobe. Therefore, introduce a new
    struct arch_probe_insn which will be common for both kprobe and uprobe, so
    that decode-insn code can be shared. Modify kprobe code accordingly.
    
    Function arm_probe_decode_insn() will be needed by uprobe as well. So make
    it global.
    Signed-off-by: default avatarPratyush Anand <panand@redhat.com>
    Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
    c2249707
kprobes.c 17.3 KB