1*1802d0beSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 26624cf65SWang Nan /* 36624cf65SWang Nan * arch/arm/probes/kprobes/checkers.h 46624cf65SWang Nan * 56624cf65SWang Nan * Copyright (C) 2014 Huawei Inc. 66624cf65SWang Nan */ 76624cf65SWang Nan #ifndef _ARM_KERNEL_PROBES_CHECKERS_H 86624cf65SWang Nan #define _ARM_KERNEL_PROBES_CHECKERS_H 96624cf65SWang Nan 106624cf65SWang Nan #include <linux/kernel.h> 116624cf65SWang Nan #include <linux/types.h> 126624cf65SWang Nan #include "../decode.h" 136624cf65SWang Nan 146624cf65SWang Nan extern probes_check_t checker_stack_use_none; 156624cf65SWang Nan extern probes_check_t checker_stack_use_unknown; 166624cf65SWang Nan #ifdef CONFIG_THUMB2_KERNEL 176624cf65SWang Nan extern probes_check_t checker_stack_use_imm_0xx; 186624cf65SWang Nan #else 196624cf65SWang Nan extern probes_check_t checker_stack_use_imm_x0x; 206624cf65SWang Nan #endif 216624cf65SWang Nan extern probes_check_t checker_stack_use_imm_xxx; 226624cf65SWang Nan extern probes_check_t checker_stack_use_stmdx; 236624cf65SWang Nan 246624cf65SWang Nan enum { 256624cf65SWang Nan STACK_USE_NONE, 266624cf65SWang Nan STACK_USE_UNKNOWN, 276624cf65SWang Nan #ifdef CONFIG_THUMB2_KERNEL 286624cf65SWang Nan STACK_USE_FIXED_0XX, 296624cf65SWang Nan STACK_USE_T32STRD, 306624cf65SWang Nan #else 316624cf65SWang Nan STACK_USE_FIXED_X0X, 326624cf65SWang Nan #endif 336624cf65SWang Nan STACK_USE_FIXED_XXX, 346624cf65SWang Nan STACK_USE_STMDX, 356624cf65SWang Nan NUM_STACK_USE_TYPES 366624cf65SWang Nan }; 376624cf65SWang Nan 386624cf65SWang Nan extern const union decode_action stack_check_actions[]; 396624cf65SWang Nan 406624cf65SWang Nan #ifndef CONFIG_THUMB2_KERNEL 416624cf65SWang Nan extern const struct decode_checker arm_stack_checker[]; 4228a1899dSWang Nan extern const struct decode_checker arm_regs_checker[]; 436624cf65SWang Nan #else 446624cf65SWang Nan #endif 456624cf65SWang Nan extern const struct decode_checker t32_stack_checker[]; 466624cf65SWang Nan extern const struct decode_checker t16_stack_checker[]; 476624cf65SWang Nan #endif 48