Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1533860 > unrolled thread

[PATCH 1/1] dma: ioat: set error code on failures

Started byPan Bian <bianpan2016@163.com>
First post2016-12-01 08:20 +0100
Last post2016-12-02 11:30 +0100
Articles 3 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 1/1] dma: ioat: set error code on failures Pan Bian <bianpan2016@163.com> - 2016-12-01 08:20 +0100
    Re: [PATCH 1/1] dma: ioat: set error code on failures Dave Jiang <dave.jiang@intel.com> - 2016-12-01 17:50 +0100
    Re: [PATCH 1/1] dma: ioat: set error code on failures Vinod Koul <vinod.koul@intel.com> - 2016-12-02 11:30 +0100

#1533860 — [PATCH 1/1] dma: ioat: set error code on failures

FromPan Bian <bianpan2016@163.com>
Date2016-12-01 08:20 +0100
Subject[PATCH 1/1] dma: ioat: set error code on failures
Message-ID<sJtOW-G5-27@gated-at.bofh.it>
Fix bug https://bugzilla.kernel.org/show_bug.cgi?id=188591. In function
ioat_dma_self_test(), when the calls to dma_mapping_error() fails, the
value of return variable err is 0 (indicates no error). As a result, the
return value may be inconsistent with the execution status. This patch
fixes the bug by assigning -ENOMEM to err on the error path.

Signed-off-by: Pan Bian <bianpan2016@163.com>
---
 drivers/dma/ioat/init.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/dma/ioat/init.c b/drivers/dma/ioat/init.c
index 015f711..32383ef 100644
--- a/drivers/dma/ioat/init.c
+++ b/drivers/dma/ioat/init.c
@@ -340,11 +340,13 @@ static int ioat_dma_self_test(struct ioatdma_device *ioat_dma)
 	dma_src = dma_map_single(dev, src, IOAT_TEST_SIZE, DMA_TO_DEVICE);
 	if (dma_mapping_error(dev, dma_src)) {
 		dev_err(dev, "mapping src buffer failed\n");
+		err = -ENOMEM;
 		goto free_resources;
 	}
 	dma_dest = dma_map_single(dev, dest, IOAT_TEST_SIZE, DMA_FROM_DEVICE);
 	if (dma_mapping_error(dev, dma_dest)) {
 		dev_err(dev, "mapping dest buffer failed\n");
+		err = -ENOMEM;
 		goto unmap_src;
 	}
 	flags = DMA_PREP_INTERRUPT;
-- 
1.9.1

[toc] | [next] | [standalone]


#1534277

FromDave Jiang <dave.jiang@intel.com>
Date2016-12-01 17:50 +0100
Message-ID<sJCIx-6wt-7@gated-at.bofh.it>
In reply to#1533860

On 12/01/2016 12:10 AM, Pan Bian wrote:
> Fix bug https://bugzilla.kernel.org/show_bug.cgi?id=188591. In function
> ioat_dma_self_test(), when the calls to dma_mapping_error() fails, the
> value of return variable err is 0 (indicates no error). As a result, the
> return value may be inconsistent with the execution status. This patch
> fixes the bug by assigning -ENOMEM to err on the error path.
> 
> Signed-off-by: Pan Bian <bianpan2016@163.com>

Acked-by: Dave Jiang <dave.jiang@intel.com>

> ---
>  drivers/dma/ioat/init.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/dma/ioat/init.c b/drivers/dma/ioat/init.c
> index 015f711..32383ef 100644
> --- a/drivers/dma/ioat/init.c
> +++ b/drivers/dma/ioat/init.c
> @@ -340,11 +340,13 @@ static int ioat_dma_self_test(struct ioatdma_device *ioat_dma)
>  	dma_src = dma_map_single(dev, src, IOAT_TEST_SIZE, DMA_TO_DEVICE);
>  	if (dma_mapping_error(dev, dma_src)) {
>  		dev_err(dev, "mapping src buffer failed\n");
> +		err = -ENOMEM;
>  		goto free_resources;
>  	}
>  	dma_dest = dma_map_single(dev, dest, IOAT_TEST_SIZE, DMA_FROM_DEVICE);
>  	if (dma_mapping_error(dev, dma_dest)) {
>  		dev_err(dev, "mapping dest buffer failed\n");
> +		err = -ENOMEM;
>  		goto unmap_src;
>  	}
>  	flags = DMA_PREP_INTERRUPT;
> 

[toc] | [prev] | [next] | [standalone]


#1534801

FromVinod Koul <vinod.koul@intel.com>
Date2016-12-02 11:30 +0100
Message-ID<sJTgl-2BN-11@gated-at.bofh.it>
In reply to#1533860
On Thu, Dec 01, 2016 at 03:10:12PM +0800, Pan Bian wrote:
> Fix bug https://bugzilla.kernel.org/show_bug.cgi?id=188591. In function
> ioat_dma_self_test(), when the calls to dma_mapping_error() fails, the
> value of return variable err is 0 (indicates no error). As a result, the
> return value may be inconsistent with the execution status. This patch
> fixes the bug by assigning -ENOMEM to err on the error path.

Please describe the fix you are doing. For Bugzilla you can use Fixes tag

Also add the correct subsystem tag, so the changelog can look like:

dmaengine: ioat: set error code on failures

In ioat_dma_self_test(), when the calls to dma_mapping_error() fails, the
value of return variable err is 0 ...

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=188591
Fixes: Commit you fixes

..

So please update the changelog and resend with Acks collected

-- 
~Vinod

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web