printk: check CON_ENABLED in have_callable_console()
have_callable_console() must also test CON_ENABLED bit, not just CON_ANYTIME. We may have disabled CON_ANYTIME console so printk can wrongly assume that it's safe to call_console_drivers(). Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Reviewed-by: Petr Mladek <pmladek@suse.com> Cc: Jan Kara <jack@suse.com> Cc: Tejun Heo <tj@kernel.org> Cc: Kyle McMartin <kyle@kernel.org> Cc: Dave Jones <davej@codemonkey.org.uk> Cc: Calvin Owens <calvinowens@fb.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
6b97a20d3a
Коммит
adaf6590ee
|
@ -2146,7 +2146,8 @@ static int have_callable_console(void)
|
|||
struct console *con;
|
||||
|
||||
for_each_console(con)
|
||||
if (con->flags & CON_ANYTIME)
|
||||
if ((con->flags & CON_ENABLED) &&
|
||||
(con->flags & CON_ANYTIME))
|
||||
return 1;
|
||||
|
||||
return 0;
|
||||
|
|
Загрузка…
Ссылка в новой задаче