Re: [PATCH v2 5/5] console: Introduce ->exit() callback

From: Andy Shevchenko
Date: Mon Jan 27 2020 - 04:44:37 EST


On Mon, Jan 27, 2020 at 11:22:20AM +0900, Sergey Senozhatsky wrote:
> On (20/01/24 17:57), Andy Shevchenko wrote:
> [..]
> > +++ b/include/linux/console.h
> > @@ -148,6 +148,7 @@ struct console {
> > struct tty_driver *(*device)(struct console *, int *);
> > void (*unblank)(void);
> > int (*setup)(struct console *, char *);
> > + void (*exit)(struct console *);
> > int (*match)(struct console *, char *name, int idx, char *options);
> > short flags;
> > short index;
> > diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
> > index da6a9bdf76b6..0319bb698d05 100644
> > --- a/kernel/printk/printk.c
> > +++ b/kernel/printk/printk.c
> > @@ -2850,6 +2850,9 @@ int unregister_console(struct console *console)
> > if (console_drivers != NULL && console->flags & CON_CONSDEV)
> > console_drivers->flags |= CON_CONSDEV;
> >
> > + if (console->exit)
> > + console->exit(console);
> > +
> > console->flags &= ~CON_ENABLED;
> > console_unlock();
> > console_sysfs_notify();
>
> Do you need to call ->exit() under console_lock?

I think we don't need that lock to be held.


--
With Best Regards,
Andy Shevchenko