* imx-serial: RX DMA startup latency
@ 2017-07-12 22:05 Fabio Estevam
2017-07-13 12:24 ` Greg Kroah-Hartman
0 siblings, 1 reply; 5+ messages in thread
From: Fabio Estevam @ 2017-07-12 22:05 UTC (permalink / raw)
To: stable; +Cc: peter.senna, s.hauer, Greg Kroah-Hartman, Fabio Estevam
From: Peter Senna Tschudin <peter.senna@collabora.com>
commit 4dec2f119e86f9c91e60cdd8f0cc057452e331a9 upstream.
18a4208 introduced a change to reduce the RX DMA latency on the first reception
when the serial port was opened for reading. However it was claiming a hardirq
unsafe lock after a hardirq safe lock which is not allowed and causes lockdep
to complain verbosely.
This patch changes the code to always start RX DMA earlier, instead of
relying on the flags used to open the serial port removing the code that
was looking for the serial file flags.
Cc: <stable@vger.kernel.org> #4.12.x
Signed-off-by: Peter Senna Tschudin <peter.senna@collabora.com>
Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
drivers/tty/serial/imx.c | 26 +++++---------------------
1 file changed, 5 insertions(+), 21 deletions(-)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 33509b4..64e16b3 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -1340,29 +1340,13 @@ static int imx_startup(struct uart_port *port)
imx_enable_ms(&sport->port);
/*
- * If the serial port is opened for reading start RX DMA immediately
- * instead of waiting for RX FIFO interrupts. In our iMX53 the average
- * delay for the first reception dropped from approximately 35000
- * microseconds to 1000 microseconds.
+ * Start RX DMA immediately instead of waiting for RX FIFO interrupts.
+ * In our iMX53 the average delay for the first reception dropped from
+ * approximately 35000 microseconds to 1000 microseconds.
*/
if (sport->dma_is_enabled) {
- struct tty_struct *tty = sport->port.state->port.tty;
- struct tty_file_private *file_priv;
- int readcnt = 0;
-
- spin_lock(&tty->files_lock);
-
- if (!list_empty(&tty->tty_files))
- list_for_each_entry(file_priv, &tty->tty_files, list)
- if (!(file_priv->file->f_flags & O_WRONLY))
- readcnt++;
-
- spin_unlock(&tty->files_lock);
-
- if (readcnt > 0) {
- imx_disable_rx_int(sport);
- start_rx_dma(sport);
- }
+ imx_disable_rx_int(sport);
+ start_rx_dma(sport);
}
spin_unlock_irqrestore(&sport->port.lock, flags);
--
cgit v1.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: imx-serial: RX DMA startup latency
2017-07-12 22:05 imx-serial: RX DMA startup latency Fabio Estevam
@ 2017-07-13 12:24 ` Greg Kroah-Hartman
2017-07-13 14:00 ` Fabio Estevam
0 siblings, 1 reply; 5+ messages in thread
From: Greg Kroah-Hartman @ 2017-07-13 12:24 UTC (permalink / raw)
To: Fabio Estevam; +Cc: stable, peter.senna, s.hauer
On Wed, Jul 12, 2017 at 07:05:06PM -0300, Fabio Estevam wrote:
> From: Peter Senna Tschudin <peter.senna@collabora.com>
>
> commit 4dec2f119e86f9c91e60cdd8f0cc057452e331a9 upstream.
>
> 18a4208 introduced a change to reduce the RX DMA latency on the first reception
> when the serial port was opened for reading. However it was claiming a hardirq
> unsafe lock after a hardirq safe lock which is not allowed and causes lockdep
> to complain verbosely.
>
> This patch changes the code to always start RX DMA earlier, instead of
> relying on the flags used to open the serial port removing the code that
> was looking for the serial file flags.
>
> Cc: <stable@vger.kernel.org> #4.12.x
> Signed-off-by: Peter Senna Tschudin <peter.senna@collabora.com>
> Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> ---
> drivers/tty/serial/imx.c | 26 +++++---------------------
> 1 file changed, 5 insertions(+), 21 deletions(-)
What are you asking for here, for this to be added to the 4.12-stable
tree?
Or something else?
Please always be explicit...
thanks,
greg k-h
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: imx-serial: RX DMA startup latency
2017-07-13 12:24 ` Greg Kroah-Hartman
@ 2017-07-13 14:00 ` Fabio Estevam
2017-07-13 14:04 ` Greg Kroah-Hartman
0 siblings, 1 reply; 5+ messages in thread
From: Fabio Estevam @ 2017-07-13 14:00 UTC (permalink / raw)
To: Greg Kroah-Hartman; +Cc: stable, Peter Senna Tschudin, Sascha Hauer
Hi Greg,
On Thu, Jul 13, 2017 at 9:24 AM, Greg Kroah-Hartman
<gregkh@linuxfoundation.org> wrote:
> On Wed, Jul 12, 2017 at 07:05:06PM -0300, Fabio Estevam wrote:
>> From: Peter Senna Tschudin <peter.senna@collabora.com>
>>
>> commit 4dec2f119e86f9c91e60cdd8f0cc057452e331a9 upstream.
>>
>> 18a4208 introduced a change to reduce the RX DMA latency on the first reception
>> when the serial port was opened for reading. However it was claiming a hardirq
>> unsafe lock after a hardirq safe lock which is not allowed and causes lockdep
>> to complain verbosely.
>>
>> This patch changes the code to always start RX DMA earlier, instead of
>> relying on the flags used to open the serial port removing the code that
>> was looking for the serial file flags.
>>
>> Cc: <stable@vger.kernel.org> #4.12.x
>> Signed-off-by: Peter Senna Tschudin <peter.senna@collabora.com>
>> Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
>> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>> Signed-off-by: Fabio Estevam <festevam@gmail.com>
>> ---
>> drivers/tty/serial/imx.c | 26 +++++---------------------
>> 1 file changed, 5 insertions(+), 21 deletions(-)
>
> What are you asking for here, for this to be added to the 4.12-stable
> tree?
Yes, correct.
I thought that adding "Cc: <stable@vger.kernel.org> #4.12.x" would
make it clear.
What should I have made differently?
Thanks
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: imx-serial: RX DMA startup latency
2017-07-13 14:00 ` Fabio Estevam
@ 2017-07-13 14:04 ` Greg Kroah-Hartman
2017-07-13 14:28 ` Fabio Estevam
0 siblings, 1 reply; 5+ messages in thread
From: Greg Kroah-Hartman @ 2017-07-13 14:04 UTC (permalink / raw)
To: Fabio Estevam; +Cc: stable, Peter Senna Tschudin, Sascha Hauer
On Thu, Jul 13, 2017 at 11:00:00AM -0300, Fabio Estevam wrote:
> Hi Greg,
>
> On Thu, Jul 13, 2017 at 9:24 AM, Greg Kroah-Hartman
> <gregkh@linuxfoundation.org> wrote:
> > On Wed, Jul 12, 2017 at 07:05:06PM -0300, Fabio Estevam wrote:
> >> From: Peter Senna Tschudin <peter.senna@collabora.com>
> >>
> >> commit 4dec2f119e86f9c91e60cdd8f0cc057452e331a9 upstream.
> >>
> >> 18a4208 introduced a change to reduce the RX DMA latency on the first reception
> >> when the serial port was opened for reading. However it was claiming a hardirq
> >> unsafe lock after a hardirq safe lock which is not allowed and causes lockdep
> >> to complain verbosely.
> >>
> >> This patch changes the code to always start RX DMA earlier, instead of
> >> relying on the flags used to open the serial port removing the code that
> >> was looking for the serial file flags.
> >>
> >> Cc: <stable@vger.kernel.org> #4.12.x
> >> Signed-off-by: Peter Senna Tschudin <peter.senna@collabora.com>
> >> Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
> >> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> >> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> >> ---
> >> drivers/tty/serial/imx.c | 26 +++++---------------------
> >> 1 file changed, 5 insertions(+), 21 deletions(-)
> >
> > What are you asking for here, for this to be added to the 4.12-stable
> > tree?
>
> Yes, correct.
>
> I thought that adding "Cc: <stable@vger.kernel.org> #4.12.x" would
> make it clear.
That makes it look like any other patch being submitted upstream.
> What should I have made differently?
Below the --- line, say "Can you apply this patch to...", or even
simpler yet, just a short email saying, "Can you apply commit XXXXXX to
the 4.12-stable tree?"
anyway, will go queue this up now, thanks.
greg k-h
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: imx-serial: RX DMA startup latency
2017-07-13 14:04 ` Greg Kroah-Hartman
@ 2017-07-13 14:28 ` Fabio Estevam
0 siblings, 0 replies; 5+ messages in thread
From: Fabio Estevam @ 2017-07-13 14:28 UTC (permalink / raw)
To: Greg Kroah-Hartman; +Cc: stable, Peter Senna Tschudin, Sascha Hauer
On Thu, Jul 13, 2017 at 11:04 AM, Greg Kroah-Hartman
<gregkh@linuxfoundation.org> wrote:
> Below the --- line, say "Can you apply this patch to...", or even
> simpler yet, just a short email saying, "Can you apply commit XXXXXX to
> the 4.12-stable tree?"
Thanks for the clarification. Will do like this next time.
> anyway, will go queue this up now, thanks.
Thanks!
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-07-13 14:28 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-12 22:05 imx-serial: RX DMA startup latency Fabio Estevam
2017-07-13 12:24 ` Greg Kroah-Hartman
2017-07-13 14:00 ` Fabio Estevam
2017-07-13 14:04 ` Greg Kroah-Hartman
2017-07-13 14:28 ` Fabio Estevam
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox