--- /dev/null
+From d35ac6648c712f0d79adc6522f3f71e8b871e349 Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Date: Fri, 28 Feb 2020 12:40:03 +0100
+Subject: [PATCH] Revert "char/random: silence a lockdep splat with printk()"
+
+This reverts commit 15341b1dd409749fa5625e4b632013b6ba81609b which is
+commit 1b710b1b10eff9d46666064ea25f079f70bc67a8 upstream.
+
+Lech writes:
+ After upgrading kernel on our boards from v4.19.105 to v4.19.106
+ we found out that syslog fails to read the messages after ones
+ read initially after opening /proc/kmsg just after booting.
+
+ I also found out, that output of 'dmesg --follow' also doesn't
+ react on new printks appearing for whatever reason - to read new
+ messages, reopening /proc/kmsg or /dev/kmsg was needed.
+
+ I bisected this down to commit
+ 15341b1dd409749fa5625e4b632013b6ba81609b ("char/random: silence
+ a lockdep splat with printk()"), and reverting it on top of
+ v4.19.106 restored correct behaviour.
+
+While people dig to find out how such an odd change causes a lockup,
+let's just revert this for now as it's not all that big of a deal for
+4.19.y.
+
+Reported-by: Lech Perczak <l.perczak@camlintechnologies.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Cc: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
+Cc: Qian Cai <cai@lca.pw>
+Cc: Theodore Ts'o <tytso@mit.edu>
+Cc: Sasha Levin <sashal@kernel.org>
+Cc: Petr Mladek <pmladek@suse.com>
+Cc: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/char/random.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+--- a/drivers/char/random.c
++++ b/drivers/char/random.c
+@@ -1609,9 +1609,8 @@ static void _warn_unseeded_randomness(co
+ print_once = true;
+ #endif
+ if (__ratelimit(&unseeded_warning))
+- printk_deferred(KERN_NOTICE "random: %s called from %pS "
+- "with crng_init=%d\n", func_name, caller,
+- crng_init);
++ pr_notice("random: %s called from %pS with crng_init=%d\n",
++ func_name, caller, crng_init);
+ }
+
+ /*