Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 36116245 authored by Miche Baker-Harvey's avatar Miche Baker-Harvey Committed by Greg Kroah-Hartman
Browse files

hvc_console: display printk messages on console.



printk only works for "registered consoles."  Currently, the hvc_console
code calls register_console() from hvc_instantiate(), but that's only
used in the early console case.  In hvc_alloc(), register_console() was
not called.

Add a call to register_console() in hvc_alloc(), set up the index in
the hvc_console, and set up the necessary vtermnos[] and cons_op[]
entries so that printk functions work.

Signed-off-by: default avatarMiche Baker-Harvey <miche@google.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 53d785cc
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -862,9 +862,13 @@ struct hvc_struct *hvc_alloc(uint32_t vtermno, int data,
		i = ++last_hvc;

	hp->index = i;
	hvc_console.index = i;
	vtermnos[i] = vtermno;
	cons_ops[i] = ops;

	list_add_tail(&(hp->next), &hvc_structs);
	spin_unlock(&hvc_structs_lock);
	register_console(&hvc_console);

	return hp;
}
@@ -875,6 +879,7 @@ int hvc_remove(struct hvc_struct *hp)
	unsigned long flags;
	struct tty_struct *tty;

	unregister_console(&hvc_console);
	spin_lock_irqsave(&hp->lock, flags);
	tty = tty_kref_get(hp->tty);