Loading kernel/printk/printk.c +5 −2 Original line number Diff line number Diff line Loading @@ -2533,6 +2533,7 @@ void console_unlock(void) bool do_cond_resched, retry; struct printk_info info; struct printk_record r; u64 __maybe_unused next_seq; if (console_suspended) { up_console_sem(); Loading Loading @@ -2642,8 +2643,10 @@ void console_unlock(void) cond_resched(); } console_locked = 0; /* Get consistent value of the next-to-be-used sequence number. */ next_seq = console_seq; console_locked = 0; up_console_sem(); /* Loading @@ -2652,7 +2655,7 @@ void console_unlock(void) * there's a new owner and the console_unlock() from them will do the * flush, no worries. */ retry = prb_read_valid(prb, console_seq, NULL); retry = prb_read_valid(prb, next_seq, NULL); printk_safe_exit_irqrestore(flags); if (retry && console_trylock()) Loading Loading
kernel/printk/printk.c +5 −2 Original line number Diff line number Diff line Loading @@ -2533,6 +2533,7 @@ void console_unlock(void) bool do_cond_resched, retry; struct printk_info info; struct printk_record r; u64 __maybe_unused next_seq; if (console_suspended) { up_console_sem(); Loading Loading @@ -2642,8 +2643,10 @@ void console_unlock(void) cond_resched(); } console_locked = 0; /* Get consistent value of the next-to-be-used sequence number. */ next_seq = console_seq; console_locked = 0; up_console_sem(); /* Loading @@ -2652,7 +2655,7 @@ void console_unlock(void) * there's a new owner and the console_unlock() from them will do the * flush, no worries. */ retry = prb_read_valid(prb, console_seq, NULL); retry = prb_read_valid(prb, next_seq, NULL); printk_safe_exit_irqrestore(flags); if (retry && console_trylock()) Loading