Let's take advantage of the new ("serial: core: Allow processing sysrq
at port unlock time") to handle sysrqs more cleanly.

Signed-off-by: Douglas Anderson <diand...@chromium.org>
---

 drivers/tty/serial/qcom_geni_serial.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/tty/serial/qcom_geni_serial.c 
b/drivers/tty/serial/qcom_geni_serial.c
index 3c8e0202da8b..20edce1e222e 100644
--- a/drivers/tty/serial/qcom_geni_serial.c
+++ b/drivers/tty/serial/qcom_geni_serial.c
@@ -499,9 +499,7 @@ static int handle_rx_console(struct uart_port *uport, u32 
bytes, bool drop)
                                        continue;
                        }
 
-                       spin_unlock(&uport->lock);
-                       sysrq = uart_handle_sysrq_char(uport, buf[c]);
-                       spin_lock(&uport->lock);
+                       sysrq = uart_prepare_sysrq_char(uport, buf[c]);
 
                        if (!sysrq)
                                tty_insert_flip_char(tport, buf[c], TTY_NORMAL);
@@ -811,7 +809,8 @@ static irqreturn_t qcom_geni_serial_isr(int isr, void *dev)
                qcom_geni_serial_handle_rx(uport, drop_rx);
 
 out_unlock:
-       spin_unlock_irqrestore(&uport->lock, flags);
+       uart_unlock_and_check_sysrq(uport, flags);
+
        return IRQ_HANDLED;
 }
 
-- 
2.19.1.568.g152ad8e336-goog



_______________________________________________
Kgdb-bugreport mailing list
Kgdb-bugreport@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport

Reply via email to