2015-07-09 13:20:14

by Krzysztof Kozłowski

[permalink] [raw]
Subject: [RFT PATCH 1/2] ASoC: zx: i2s: Fix devm_ioremap_resource return value check

Value returned by devm_ioremap_resource() was checked for non-NULL but
devm_ioremap_resource() returns IOMEM_ERR_PTR, not NULL. In case of
error this could lead to dereference of ERR_PTR.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
Cc: <[email protected]>
Fixes: e5d4cd87800c ("ASoC: zx: Add ZTE zx296702 I2S DAI driver")

---

Patch only compile tested.
---
sound/soc/zte/zx296702-i2s.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/soc/zte/zx296702-i2s.c b/sound/soc/zte/zx296702-i2s.c
index 98d96e1b17e0..1930c42e1f55 100644
--- a/sound/soc/zte/zx296702-i2s.c
+++ b/sound/soc/zte/zx296702-i2s.c
@@ -393,9 +393,9 @@ static int zx_i2s_probe(struct platform_device *pdev)
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
zx_i2s->mapbase = res->start;
zx_i2s->reg_base = devm_ioremap_resource(&pdev->dev, res);
- if (!zx_i2s->reg_base) {
+ if (IS_ERR(zx_i2s->reg_base)) {
dev_err(&pdev->dev, "ioremap failed!\n");
- return -EIO;
+ return PTR_ERR(zx_i2s->reg_base);
}

writel_relaxed(0, zx_i2s->reg_base + ZX_I2S_FIFO_CTRL);
--
2.1.4


2015-07-09 13:20:07

by Krzysztof Kozłowski

[permalink] [raw]
Subject: [RFT PATCH 2/2] ASoC: zx: spdif: Fix devm_ioremap_resource return value check

Value returned by devm_ioremap_resource() was checked for non-NULL but
devm_ioremap_resource() returns IOMEM_ERR_PTR, not NULL. In case of
error this could lead to dereference of ERR_PTR.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
Cc: <[email protected]>
Fixes: 6fc3d24d4277 ("ASoC: zx: Add zx296702 SPDIF support")

---

Patch only compile tested.
---
sound/soc/zte/zx296702-spdif.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/soc/zte/zx296702-spdif.c b/sound/soc/zte/zx296702-spdif.c
index 11a0e46a1156..26265ce4caca 100644
--- a/sound/soc/zte/zx296702-spdif.c
+++ b/sound/soc/zte/zx296702-spdif.c
@@ -322,9 +322,9 @@ static int zx_spdif_probe(struct platform_device *pdev)
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
zx_spdif->mapbase = res->start;
zx_spdif->reg_base = devm_ioremap_resource(&pdev->dev, res);
- if (!zx_spdif->reg_base) {
+ if (IS_ERR(zx_spdif->reg_base)) {
dev_err(&pdev->dev, "ioremap failed!\n");
- return -EIO;
+ return PTR_ERR(zx_spdif->reg_base);
}

zx_spdif_dev_init(zx_spdif->reg_base);
--
2.1.4

2015-07-09 15:33:55

by Mark Brown

[permalink] [raw]
Subject: Re: [RFT PATCH 1/2] ASoC: zx: i2s: Fix devm_ioremap_resource return value check

On Thu, Jul 09, 2015 at 10:19:28PM +0900, Krzysztof Kozlowski wrote:

> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> Cc: <[email protected]>

Why are you adding a Cc to stable? The zx driver was added in the merge
window...


Attachments:
(No filename) (248.00 B)
signature.asc (473.00 B)
Digital signature
Download all attachments

2015-07-10 00:45:36

by Krzysztof Kozłowski

[permalink] [raw]
Subject: Re: [RFT PATCH 1/2] ASoC: zx: i2s: Fix devm_ioremap_resource return value check

W dniu 10 lipca 2015 00:33 użytkownik Mark Brown <[email protected]> napisał:
> On Thu, Jul 09, 2015 at 10:19:28PM +0900, Krzysztof Kozlowski wrote:
>
>> Signed-off-by: Krzysztof Kozlowski <[email protected]>
>> Cc: <[email protected]>
>
> Why are you adding a Cc to stable? The zx driver was added in the merge
> window...

My mistake, I did not check when the commit was merged. Can you strip
the CC from the patch?

Best regards,
Krzysztof

2015-07-11 07:18:04

by Jun Nie

[permalink] [raw]
Subject: Re: [RFT PATCH 2/2] ASoC: zx: spdif: Fix devm_ioremap_resource return value check

2015-07-09 21:19 GMT+08:00 Krzysztof Kozlowski <[email protected]>:
> Value returned by devm_ioremap_resource() was checked for non-NULL but
> devm_ioremap_resource() returns IOMEM_ERR_PTR, not NULL. In case of
> error this could lead to dereference of ERR_PTR.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> Cc: <[email protected]>
> Fixes: 6fc3d24d4277 ("ASoC: zx: Add zx296702 SPDIF support")
>
> ---
>
> Patch only compile tested.
> ---
> sound/soc/zte/zx296702-spdif.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/zte/zx296702-spdif.c b/sound/soc/zte/zx296702-spdif.c
> index 11a0e46a1156..26265ce4caca 100644
> --- a/sound/soc/zte/zx296702-spdif.c
> +++ b/sound/soc/zte/zx296702-spdif.c
> @@ -322,9 +322,9 @@ static int zx_spdif_probe(struct platform_device *pdev)
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> zx_spdif->mapbase = res->start;
> zx_spdif->reg_base = devm_ioremap_resource(&pdev->dev, res);
> - if (!zx_spdif->reg_base) {
> + if (IS_ERR(zx_spdif->reg_base)) {
> dev_err(&pdev->dev, "ioremap failed!\n");
> - return -EIO;
> + return PTR_ERR(zx_spdif->reg_base);
> }
>
> zx_spdif_dev_init(zx_spdif->reg_base);
> --
> 2.1.4
>
Reviewed-by: Jun Nie <[email protected]>

2015-07-11 06:19:36

by Jun Nie

[permalink] [raw]
Subject: Re: [RFT PATCH 1/2] ASoC: zx: i2s: Fix devm_ioremap_resource return value check

2015-07-09 21:19 GMT+08:00 Krzysztof Kozlowski <[email protected]>:
> Value returned by devm_ioremap_resource() was checked for non-NULL but
> devm_ioremap_resource() returns IOMEM_ERR_PTR, not NULL. In case of
> error this could lead to dereference of ERR_PTR.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> Cc: <[email protected]>
> Fixes: e5d4cd87800c ("ASoC: zx: Add ZTE zx296702 I2S DAI driver")
>
> ---
>
> Patch only compile tested.
> ---
> sound/soc/zte/zx296702-i2s.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/zte/zx296702-i2s.c b/sound/soc/zte/zx296702-i2s.c
> index 98d96e1b17e0..1930c42e1f55 100644
> --- a/sound/soc/zte/zx296702-i2s.c
> +++ b/sound/soc/zte/zx296702-i2s.c
> @@ -393,9 +393,9 @@ static int zx_i2s_probe(struct platform_device *pdev)
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> zx_i2s->mapbase = res->start;
> zx_i2s->reg_base = devm_ioremap_resource(&pdev->dev, res);
> - if (!zx_i2s->reg_base) {
> + if (IS_ERR(zx_i2s->reg_base)) {
> dev_err(&pdev->dev, "ioremap failed!\n");
> - return -EIO;
> + return PTR_ERR(zx_i2s->reg_base);
> }
>
> writel_relaxed(0, zx_i2s->reg_base + ZX_I2S_FIFO_CTRL);
> --
> 2.1.4
>
Reviewed-by: Jun Nie <[email protected]>