summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-09-24 07:55:26 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-09-24 07:55:26 -0700
commit3d38968e50016412d359980b5d71cdfb4c4f70fe (patch)
tree126b9f9fa6ea8e90dc3a8c9e1e6bdfed798f853e /drivers
parent30931e7448f2c7dd8634376a2355120733b28e4e (diff)
parentba57435ee45ab5f186ef5af6372ec0de0a7b20b1 (diff)
Merge "sysrq: Fix warning in sysrq generated crash."
Diffstat (limited to 'drivers')
-rw-r--r--drivers/tty/sysrq.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
index 5381a728d23e..e5139402e7f8 100644
--- a/drivers/tty/sysrq.c
+++ b/drivers/tty/sysrq.c
@@ -133,6 +133,12 @@ static void sysrq_handle_crash(int key)
{
char *killer = NULL;
+ /* we need to release the RCU read lock here,
+ * otherwise we get an annoying
+ * 'BUG: sleeping function called from invalid context'
+ * complaint from the kernel before the panic.
+ */
+ rcu_read_unlock();
panic_on_oops = 1; /* force panic */
wmb();
*killer = 1;