[PATCH] software node: fix wrong node passed to find nargs_prop

Clément Léger posted 1 patch 4 years, 6 months ago
drivers/base/swnode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] software node: fix wrong node passed to find nargs_prop
Posted by Clément Léger 4 years, 6 months ago
nargs_prop refers to a property located in the reference that is found
within the nargs property. Use the correct reference node in call to
property_entry_read_int_array() to retrieve the correct nargs value.

Fixes: b06184acf751 ("software node: Add software_node_get_reference_args()")
Signed-off-by: Clément Léger <clement.leger@bootlin.com>
---
 drivers/base/swnode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
index 4debcea4fb12..0a482212c7e8 100644
--- a/drivers/base/swnode.c
+++ b/drivers/base/swnode.c
@@ -529,7 +529,7 @@ software_node_get_reference_args(const struct fwnode_handle *fwnode,
 		return -ENOENT;
 
 	if (nargs_prop) {
-		error = property_entry_read_int_array(swnode->node->properties,
+		error = property_entry_read_int_array(ref->node->properties,
 						      nargs_prop, sizeof(u32),
 						      &nargs_prop_val, 1);
 		if (error)
-- 
2.34.1

Re: [PATCH] software node: fix wrong node passed to find nargs_prop
Posted by Sakari Ailus 4 years, 6 months ago
On Mon, Dec 20, 2021 at 10:05:33PM +0100, Clément Léger wrote:
> nargs_prop refers to a property located in the reference that is found
> within the nargs property. Use the correct reference node in call to
> property_entry_read_int_array() to retrieve the correct nargs value.
> 
> Fixes: b06184acf751 ("software node: Add software_node_get_reference_args()")
> Signed-off-by: Clément Léger <clement.leger@bootlin.com>

Thank you (and thanks to Andy for cc'ing me).

Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com>

> ---
>  drivers/base/swnode.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
> index 4debcea4fb12..0a482212c7e8 100644
> --- a/drivers/base/swnode.c
> +++ b/drivers/base/swnode.c
> @@ -529,7 +529,7 @@ software_node_get_reference_args(const struct fwnode_handle *fwnode,
>  		return -ENOENT;
>  
>  	if (nargs_prop) {
> -		error = property_entry_read_int_array(swnode->node->properties,
> +		error = property_entry_read_int_array(ref->node->properties,
>  						      nargs_prop, sizeof(u32),
>  						      &nargs_prop_val, 1);
>  		if (error)

-- 
Sakari Ailus
Re: [PATCH] software node: fix wrong node passed to find nargs_prop
Posted by Heikki Krogerus 4 years, 6 months ago
On Mon, Dec 20, 2021 at 10:05:33PM +0100, Clément Léger wrote:
> nargs_prop refers to a property located in the reference that is found
> within the nargs property. Use the correct reference node in call to
> property_entry_read_int_array() to retrieve the correct nargs value.
> 
> Fixes: b06184acf751 ("software node: Add software_node_get_reference_args()")
> Signed-off-by: Clément Léger <clement.leger@bootlin.com>

Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

> ---
>  drivers/base/swnode.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
> index 4debcea4fb12..0a482212c7e8 100644
> --- a/drivers/base/swnode.c
> +++ b/drivers/base/swnode.c
> @@ -529,7 +529,7 @@ software_node_get_reference_args(const struct fwnode_handle *fwnode,
>  		return -ENOENT;
>  
>  	if (nargs_prop) {
> -		error = property_entry_read_int_array(swnode->node->properties,
> +		error = property_entry_read_int_array(ref->node->properties,
>  						      nargs_prop, sizeof(u32),
>  						      &nargs_prop_val, 1);
>  		if (error)
> -- 
> 2.34.1

-- 
heikki
Re: [PATCH] software node: fix wrong node passed to find nargs_prop
Posted by Rafael J. Wysocki 4 years, 6 months ago
On Wed, Dec 22, 2021 at 12:19 PM Heikki Krogerus
<heikki.krogerus@linux.intel.com> wrote:
>
> On Mon, Dec 20, 2021 at 10:05:33PM +0100, Clément Léger wrote:
> > nargs_prop refers to a property located in the reference that is found
> > within the nargs property. Use the correct reference node in call to
> > property_entry_read_int_array() to retrieve the correct nargs value.
> >
> > Fixes: b06184acf751 ("software node: Add software_node_get_reference_args()")
> > Signed-off-by: Clément Léger <clement.leger@bootlin.com>
>
> Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

Applied as 5.17 material, thanks!

> > ---
> >  drivers/base/swnode.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
> > index 4debcea4fb12..0a482212c7e8 100644
> > --- a/drivers/base/swnode.c
> > +++ b/drivers/base/swnode.c
> > @@ -529,7 +529,7 @@ software_node_get_reference_args(const struct fwnode_handle *fwnode,
> >               return -ENOENT;
> >
> >       if (nargs_prop) {
> > -             error = property_entry_read_int_array(swnode->node->properties,
> > +             error = property_entry_read_int_array(ref->node->properties,
> >                                                     nargs_prop, sizeof(u32),
> >                                                     &nargs_prop_val, 1);
> >               if (error)
> > --
> > 2.34.1
>
> --
> heikki