Lines Matching refs:ex
14 get_ex_fixup(const struct exception_table_entry *ex) in get_ex_fixup() argument
16 return ((unsigned long)&ex->fixup + ex->fixup); in get_ex_fixup()
19 static bool ex_handler_uaccess_err_zero(const struct exception_table_entry *ex, in ex_handler_uaccess_err_zero() argument
22 int reg_err = FIELD_GET(EX_DATA_REG_ERR, ex->data); in ex_handler_uaccess_err_zero()
23 int reg_zero = FIELD_GET(EX_DATA_REG_ZERO, ex->data); in ex_handler_uaccess_err_zero()
28 regs->pc = get_ex_fixup(ex); in ex_handler_uaccess_err_zero()
33 ex_handler_load_unaligned_zeropad(const struct exception_table_entry *ex, in ex_handler_load_unaligned_zeropad() argument
36 int reg_data = FIELD_GET(EX_DATA_REG_DATA, ex->data); in ex_handler_load_unaligned_zeropad()
37 int reg_addr = FIELD_GET(EX_DATA_REG_ADDR, ex->data); in ex_handler_load_unaligned_zeropad()
55 regs->pc = get_ex_fixup(ex); in ex_handler_load_unaligned_zeropad()
61 const struct exception_table_entry *ex; in fixup_exception() local
63 ex = search_exception_tables(instruction_pointer(regs)); in fixup_exception()
64 if (!ex) in fixup_exception()
67 switch (ex->type) { in fixup_exception()
69 return ex_handler_bpf(ex, regs); in fixup_exception()
72 return ex_handler_uaccess_err_zero(ex, regs); in fixup_exception()
74 return ex_handler_load_unaligned_zeropad(ex, regs); in fixup_exception()