hi, [kernel-4.9, kernel-4.14]
When preemption disable in schedule(), Current linux design will panic when panic_on_warn=1 However, default setting, panic_on_warn=0, and if panic_on_warn=1 , and call panic() after printing out WARN() location. It affects too much cases. Could panic directly without checking panic_on_warn? This is obviously incorrect behavior, and should be panic to prevent misbehavior. if (panic_on_warn) panic("scheduling while atomic\n"); thanks! ============================= kernel/sched/core.c schedule_debug => when in atomic preempt off => __schedule_bug ====