preempt_schedule_notrace(9) - phpMan
PREEMPT_SCHEDULE_NOT(9) Driver Basics PREEMPT_SCHEDULE_NOT(9)
NAME
preempt_schedule_notrace - preempt_schedule called by tracing
SYNOPSIS
__visible void __sched notrace preempt_schedule_notrace(void);
ARGUMENTS
void
no arguments
DESCRIPTION
The tracing infrastructure uses preempt_enable_notrace to prevent recursion and tracing
preempt enabling caused by the tracing infrastructure itself. But as tracing can happen in
areas coming from userspace or just about to enter userspace, a preempt enable can occur
before user_exit is called. This will cause the scheduler to be called when the system is
still in usermode.
To prevent this, the preempt_enable_notrace will use this function instead of
preempt_schedule to exit user context if needed before calling the scheduler.
COPYRIGHT
Kernel Hackers Manual 4.8. January 2017 PREEMPT_SCHEDULE_NOT(9)
|