2021-08-19 14:35:53

by Mihai Carabas

[permalink] [raw]
Subject: [PATCH v2] misc/pvpanic: fix set driver data

Add again dev_set_drvdata(), but this time in devm_pvpanic_probe(), in order
for dev_get_drvdata() to not return NULL.

Fixes: 394febc9d0a6 ("misc/pvpanic: Make 'pvpanic_probe()' resource managed")
Signed-off-by: Mihai Carabas <[email protected]>
---
drivers/misc/pvpanic/pvpanic.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/misc/pvpanic/pvpanic.c b/drivers/misc/pvpanic/pvpanic.c
index 02b807c..6ce48ce 100644
--- a/drivers/misc/pvpanic/pvpanic.c
+++ b/drivers/misc/pvpanic/pvpanic.c
@@ -81,6 +81,8 @@ int devm_pvpanic_probe(struct device *dev, struct pvpanic_instance *pi)
if (!pi || !pi->base)
return -EINVAL;

+ dev_set_drvdata(dev, pi);
+
spin_lock(&pvpanic_lock);
list_add(&pi->list, &pvpanic_list);
spin_unlock(&pvpanic_lock);
--
1.8.3.1


2021-08-19 15:50:51

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v2] misc/pvpanic: fix set driver data

On Thu, Aug 19, 2021 at 04:41:21PM +0300, Mihai Carabas wrote:
> Add again dev_set_drvdata(), but this time in devm_pvpanic_probe(), in order
> for dev_get_drvdata() to not return NULL.

Thanks, almost good, after addressing below feel free to add
Reviewed-by: Andy Shevchenko <[email protected]>

> Fixes: 394febc9d0a6 ("misc/pvpanic: Make 'pvpanic_probe()' resource managed")
> Signed-off-by: Mihai Carabas <[email protected]>
> ---
> drivers/misc/pvpanic/pvpanic.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/misc/pvpanic/pvpanic.c b/drivers/misc/pvpanic/pvpanic.c
> index 02b807c..6ce48ce 100644
> --- a/drivers/misc/pvpanic/pvpanic.c
> +++ b/drivers/misc/pvpanic/pvpanic.c
> @@ -81,6 +81,8 @@ int devm_pvpanic_probe(struct device *dev, struct pvpanic_instance *pi)
> if (!pi || !pi->base)
> return -EINVAL;

> + dev_set_drvdata(dev, pi);

I believe this should be last (or close enough) operation in the function for
the sake of logical flow.

> spin_lock(&pvpanic_lock);
> list_add(&pi->list, &pvpanic_list);
> spin_unlock(&pvpanic_lock);

--
With Best Regards,
Andy Shevchenko