The failure value of dev_get_regmap is NULL. Hence, the return value is
changed to -ENODEV.
A simplified version of the semantic match that finds this problem is as
follows:
// <smpl>
@@
expression e1;
@@
* if (!e1)
return PTR_ERR(e1);
// </smpl>
Signed-off-by: Himangi Saraogi <[email protected]>
Acked-by: Julia Lawall <[email protected]>
---
drivers/pinctrl/berlin/berlin.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pinctrl/berlin/berlin.c b/drivers/pinctrl/berlin/berlin.c
index edf5d2f..86db223 100644
--- a/drivers/pinctrl/berlin/berlin.c
+++ b/drivers/pinctrl/berlin/berlin.c
@@ -320,7 +320,7 @@ int berlin_pinctrl_probe(struct platform_device *pdev,
regmap = dev_get_regmap(&pdev->dev, NULL);
if (!regmap)
- return PTR_ERR(regmap);
+ return -ENODEV;
pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL);
if (!pctrl)
--
1.9.1
On 06/29/2014 09:18 AM, Himangi Saraogi wrote:
> The failure value of dev_get_regmap is NULL. Hence, the return value is
> changed to -ENODEV.
>
> A simplified version of the semantic match that finds this problem is as
> follows:
>
> // <smpl>
> @@
> expression e1;
> @@
>
> * if (!e1)
> return PTR_ERR(e1);
>
> // </smpl>
>
> Signed-off-by: Himangi Saraogi <[email protected]>
> Acked-by: Julia Lawall <[email protected]>
Himangi,
thanks for the fix, but we already have a similar patch [1] pending.
Sebastian
[1] http://www.spinics.net/lists/linux-kernel-janitors/msg19125.html
> ---
> drivers/pinctrl/berlin/berlin.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pinctrl/berlin/berlin.c b/drivers/pinctrl/berlin/berlin.c
> index edf5d2f..86db223 100644
> --- a/drivers/pinctrl/berlin/berlin.c
> +++ b/drivers/pinctrl/berlin/berlin.c
> @@ -320,7 +320,7 @@ int berlin_pinctrl_probe(struct platform_device *pdev,
>
> regmap = dev_get_regmap(&pdev->dev, NULL);
> if (!regmap)
> - return PTR_ERR(regmap);
> + return -ENODEV;
>
> pctrl = devm_kzalloc(dev, sizeof(*pctrl), GFP_KERNEL);
> if (!pctrl)
>