int ia32_setup_frame(struct ksignal *ksig, struct pt_regs *regs); int ia32_setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs); int x64_setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs); int x32_setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs);
/* * To prevent immediate repeat of single step trap on return from SIGTRAP * handler if the trap flag (TF) is set without an external debugger attached, * clear the software event flag in the augmented SS, ensuring no single-step * trap is pending upon ERETU completion. * * Note, this function should be called in sigreturn() before the original * state is restored to make sure the TF is read from the entry frame.
*/ static __always_inline void prevent_single_step_upon_eretu(struct pt_regs *regs)
{ /* * If the trap flag (TF) is set, i.e., the sigreturn() SYSCALL instruction * is being single-stepped, do not clear the software event flag in the * augmented SS, thus a debugger won't skip over the following instruction.
*/ #ifdef CONFIG_X86_FRED if (!(regs->flags & X86_EFLAGS_TF))
regs->fred_ss.swevent = 0; #endif
}
#endif/* _ASM_X86_SIGHANDLING_H */
Messung V0.5
¤ Dauer der Verarbeitung: 0.22 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.