FAILED: patch "[PATCH] i2c: imx: Fix reinit_completion() use" failed to apply to 4.14-stable tree
Subsystems (4)
[email protected]
maintainerThe patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
9f9e3e0d4dd3338b3f3dde080789f71901e1e4ffMon Sep 17 00:00:00 2001
From: Esben Haabendal <[email protected]>
Date: Mon, 9 Jul 2018 11:43:01 +0200
Subject: [PATCH] i2c: imx: Fix reinit_completion() use
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Make sure to call reinit_completion() before dma is started to avoid race condition where reinit_completion() is called after complete() and before wait_for_completion_timeout().
drivers/i2c/busses/i2c-imx.c +1 -2
@@ -368,6 +368,7 @@ static int i2c_imx_dma_xfer(struct imx_i2c_struct *i2c_imx, goto err_desc; } +reinit_completion (&dma->cmd_complete); txdesc->callback = i2c_imx_dma_callback; txdesc->callback_param = i2c_imx;if (dma_submit_error (dmaengine_submit (txdesc))) {
@@ -622,7 +623,6 @@ static int i2c_imx_dma_write(struct imx_i2c_struct *i2c_imx,* The first byte must be transmitted by the CPU. */ imx_i2c_write_reg (i2c_8bit_addr_from_msg (msgs), i2c_imx,IMX_I2C_I2DR ); -reinit_completion (&i2c_imx->dma->cmd_complete); time_left =wait_for_completion_timeout ( &i2c_imx->dma->cmd_complete,msecs_to_jiffies (DMA_TIMEOUT ));
@@ -681,7 +681,6 @@ static int i2c_imx_dma_read(struct imx_i2c_struct *i2c_imx,if (result)return result; -reinit_completion (&i2c_imx->dma->cmd_complete); time_left =wait_for_completion_timeout ( &i2c_imx->dma->cmd_complete,msecs_to_jiffies (DMA_TIMEOUT ));
Sudip Mukherjee
Reviewed-by Uwe Kleine-K�nigHi Greg,
Quoted 5 lines · On Mon, Jul 30, 2018 at 09:56:54AM +0200, [email protected] wrote:
The patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
The attached backported patch should apply to v4.14-stable.
--
Regards
Sudip
Quoted 1 line
From
ac39cd59aff9d2ddddea793ab31794316740430fMon Sep 17 00:00:00 2001
From: Esben Haabendal <[email protected]>
Date: Mon, 9 Jul 2018 11:43:01 +0200
Subject: [PATCH] i2c: imx: Fix reinit_completion() use
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
commit 9f9e3e0d4dd3338b3f3dde080789f71901e1e4ff upstream
Make sure to call reinit_completion() before dma is started to avoid race condition where reinit_completion() is called after complete() and before wait_for_completion_timeout().
--- drivers/i2c/busses/i2c-imx.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
drivers/i2c/busses/i2c-imx.c +1 -2
@@ -376,6 +376,7 @@ static int i2c_imx_dma_xfer(struct imx_i2c_struct *i2c_imx, goto err_desc; } +reinit_completion (&dma->cmd_complete); txdesc->callback = i2c_imx_dma_callback; txdesc->callback_param = i2c_imx;if (dma_submit_error (dmaengine_submit (txdesc))) {
@@ -619,7 +620,6 @@ static int i2c_imx_dma_write(struct imx_i2c_struct *i2c_imx,* The first byte must be transmitted by the CPU. */ imx_i2c_write_reg (msgs->addr <<1 , i2c_imx,IMX_I2C_I2DR ); -reinit_completion (&i2c_imx->dma->cmd_complete); time_left =wait_for_completion_timeout ( &i2c_imx->dma->cmd_complete,msecs_to_jiffies (DMA_TIMEOUT ));
@@ -678,7 +678,6 @@ static int i2c_imx_dma_read(struct imx_i2c_struct *i2c_imx,if (result)return result; -reinit_completion (&i2c_imx->dma->cmd_complete); time_left =wait_for_completion_timeout ( &i2c_imx->dma->cmd_complete,msecs_to_jiffies (DMA_TIMEOUT ));
Signature · 1 line
2.11.0
Quoted 10 lines · Sudip Mukherjee
Hi Greg,
Quoted 5 lines · On Mon, Jul 30, 2018 at 09:56:54AM +0200, [email protected] wrote:
The patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.The attached backported patch should apply to v4.14-stable.
Applied, thanks!
greg k-h