console: Don't notify user space when unregister non-listed console

If console is not on the list then there is nothing for us to do
and sysfs notify is pointless.

Note, that nr_ext_console_drivers is being changed only for listed
consoles.

Suggested-by: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
Link: http://lkml.kernel.org/r/20200203133130.11591-6-andriy.shevchenko@linux.intel.com
To: linux-kernel@vger.kernel.org
To: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
This commit is contained in:
Andy Shevchenko 2020-02-03 15:31:29 +02:00 committed by Petr Mladek
parent bb72e3981d
commit e78bedbd42
1 changed files with 11 additions and 1 deletions

View File

@ -2836,7 +2836,10 @@ int unregister_console(struct console *console)
} }
} }
if (!res && (console->flags & CON_EXTENDED)) if (res)
goto out_disable_unlock;
if (console->flags & CON_EXTENDED)
nr_ext_console_drivers--; nr_ext_console_drivers--;
/* /*
@ -2849,6 +2852,13 @@ int unregister_console(struct console *console)
console->flags &= ~CON_ENABLED; console->flags &= ~CON_ENABLED;
console_unlock(); console_unlock();
console_sysfs_notify(); console_sysfs_notify();
return res;
out_disable_unlock:
console->flags &= ~CON_ENABLED;
console_unlock();
return res; return res;
} }
EXPORT_SYMBOL(unregister_console); EXPORT_SYMBOL(unregister_console);