* [PATCH] sh: fix Oops in the serial SCI driver
@ 2010-05-21 15:22 ` Guennadi Liakhovetski
2010-05-22 8:10 ` Paul Mundt
0 siblings, 1 reply; 2+ messages in thread
From: Guennadi Liakhovetski @ 2010-05-21 15:22 UTC (permalink / raw)
To: linux-sh@vger.kernel.org; +Cc: linux-serial
Fix an Oops, triggering, if the DMA buffer allocation for the Rx channel in
sh-sci.c fails.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
drivers/serial/sh-sci.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/serial/sh-sci.c b/drivers/serial/sh-sci.c
index 304a877..7b273c9 100644
--- a/drivers/serial/sh-sci.c
+++ b/drivers/serial/sh-sci.c
@@ -1007,8 +1007,9 @@ static void sci_rx_dma_release(struct sci_port *s, bool enable_pio)
s->chan_rx = NULL;
s->cookie_rx[0] = s->cookie_rx[1] = -EINVAL;
dma_release_channel(chan);
- dma_free_coherent(port->dev, s->buf_len_rx * 2,
- sg_virt(&s->sg_rx[0]), sg_dma_address(&s->sg_rx[0]));
+ if (sg_dma_address(&s->sg_rx[0]))
+ dma_free_coherent(port->dev, s->buf_len_rx * 2,
+ sg_virt(&s->sg_rx[0]), sg_dma_address(&s->sg_rx[0]));
if (enable_pio)
sci_start_rx(port);
}
--
1.6.2.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] sh: fix Oops in the serial SCI driver
2010-05-21 15:22 ` [PATCH] sh: fix Oops in the serial SCI driver Guennadi Liakhovetski
@ 2010-05-22 8:10 ` Paul Mundt
0 siblings, 0 replies; 2+ messages in thread
From: Paul Mundt @ 2010-05-22 8:10 UTC (permalink / raw)
To: Guennadi Liakhovetski
Cc: linux-sh@vger.kernel.org, linux-serial, Dan Williams
On Fri, May 21, 2010 at 05:22:40PM +0200, Guennadi Liakhovetski wrote:
> Fix an Oops, triggering, if the DMA buffer allocation for the Rx channel in
> sh-sci.c fails.
On Fri, May 21, 2010 at 05:28:51PM +0200, Guennadi Liakhovetski wrote:
> This prevents the driver from unloading, while it is in use. Unloading of the
> driver, while its DMA channels are held, leads to a kernel Oops.
On Fri, May 21, 2010 at 05:30:12PM +0200, Guennadi Liakhovetski wrote:
> If all descriptors on a channel are terminated or the channel is released,
> update the completed cookie counter to match the last cookie. This prevents
> inconsistency warning on resumed DMA operation.
Applied, thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-05-22 8:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <Pine.LNX.4.64.1005211728520.8450@axis700.grange>
[not found] ` <Pine.LNX.4.64.1005211722410.8450@axis700.grange>
2010-05-21 15:22 ` [PATCH] sh: fix Oops in the serial SCI driver Guennadi Liakhovetski
2010-05-22 8:10 ` Paul Mundt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).