File tree Expand file tree Collapse file tree 2 files changed +9
-4
lines changed Expand file tree Collapse file tree 2 files changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -931,6 +931,7 @@ void __noreturn make_task_dead(int signr)
931
931
* Then do everything else.
932
932
*/
933
933
struct task_struct * tsk = current ;
934
+ unsigned int limit ;
934
935
935
936
if (unlikely (in_interrupt ()))
936
937
panic ("Aiee, killing interrupt handler!" );
@@ -954,8 +955,9 @@ void __noreturn make_task_dead(int signr)
954
955
* To make sure this can't happen, place an upper bound on how often the
955
956
* kernel may oops without panic().
956
957
*/
957
- if (atomic_inc_return (& oops_count ) >= READ_ONCE (oops_limit ) && oops_limit )
958
- panic ("Oopsed too often (kernel.oops_limit is %d)" , oops_limit );
958
+ limit = READ_ONCE (oops_limit );
959
+ if (atomic_inc_return (& oops_count ) >= limit && limit )
960
+ panic ("Oopsed too often (kernel.oops_limit is %d)" , limit );
959
961
960
962
/*
961
963
* We're taking recursive faults here in make_task_dead. Safest is to just
Original file line number Diff line number Diff line change @@ -231,12 +231,15 @@ static void panic_print_sys_info(bool console_flush)
231
231
232
232
void check_panic_on_warn (const char * origin )
233
233
{
234
+ unsigned int limit ;
235
+
234
236
if (panic_on_warn )
235
237
panic ("%s: panic_on_warn set ...\n" , origin );
236
238
237
- if (atomic_inc_return (& warn_count ) >= READ_ONCE (warn_limit ) && warn_limit )
239
+ limit = READ_ONCE (warn_limit );
240
+ if (atomic_inc_return (& warn_count ) >= limit && limit )
238
241
panic ("%s: system warned too often (kernel.warn_limit is %d)" ,
239
- origin , warn_limit );
242
+ origin , limit );
240
243
}
241
244
242
245
/**
You can’t perform that action at this time.
0 commit comments