All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] xen/common: Don't dereference overlay_node after checking that it is NULL
@ 2024-01-11 12:09 Javi Merino
  2024-01-11 21:51 ` Vikram Garhwal
  2024-01-12 11:04 ` Julien Grall
  0 siblings, 2 replies; 3+ messages in thread
From: Javi Merino @ 2024-01-11 12:09 UTC (permalink / raw)
  To: xen-devel; +Cc: Javi Merino, Vikram Garhwal, Julien Grall, Stefano Stabellini

In remove_nodes(), overlay_node is dereferenced when printing the
error message even though it is known to be NULL.  Return without
printing as an error message is already printed by the caller.

The semantic patch that spots this code is available in

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/scripts/coccinelle/null/deref_null.cocci?id=1f874787ed9a2d78ed59cb21d0d90ac0178eceb0

Fixes: 7e5c4a8b86f1 ("xen/arm: Implement device tree node removal functionalities")
Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
CC: Vikram Garhwal <vikram.garhwal@amd.com>
CC: Julien Grall <julien@xen.org>

 xen/common/dt-overlay.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
index 5663a049e90a..1b197381f616 100644
--- a/xen/common/dt-overlay.c
+++ b/xen/common/dt-overlay.c
@@ -427,11 +427,7 @@ static int remove_nodes(const struct overlay_track *tracker)
     {
         overlay_node = (struct dt_device_node *)tracker->nodes_address[j];
         if ( overlay_node == NULL )
-        {
-            printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n",
-                   overlay_node->full_name);
             return -EINVAL;
-        }
 
         rc = remove_descendant_nodes_resources(overlay_node);
         if ( rc )
-- 
2.42.0



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] xen/common: Don't dereference overlay_node after checking that it is NULL
  2024-01-11 12:09 [PATCH v2] xen/common: Don't dereference overlay_node after checking that it is NULL Javi Merino
@ 2024-01-11 21:51 ` Vikram Garhwal
  2024-01-12 11:04 ` Julien Grall
  1 sibling, 0 replies; 3+ messages in thread
From: Vikram Garhwal @ 2024-01-11 21:51 UTC (permalink / raw)
  To: Javi Merino; +Cc: xen-devel, Julien Grall, Stefano Stabellini

On Thu, Jan 11, 2024 at 12:09:27PM +0000, Javi Merino wrote:
> In remove_nodes(), overlay_node is dereferenced when printing the
> error message even though it is known to be NULL.  Return without
> printing as an error message is already printed by the caller.
> 
> The semantic patch that spots this code is available in
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/scripts/coccinelle/null/deref_null.cocci?id=1f874787ed9a2d78ed59cb21d0d90ac0178eceb0
> 
> Fixes: 7e5c4a8b86f1 ("xen/arm: Implement device tree node removal functionalities")
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
Reviewed-by: Vikram Garhwal <vikram.garhwal@amd.com>

> ---
> CC: Vikram Garhwal <vikram.garhwal@amd.com>
> CC: Julien Grall <julien@xen.org>
> 
>  xen/common/dt-overlay.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
> index 5663a049e90a..1b197381f616 100644
> --- a/xen/common/dt-overlay.c
> +++ b/xen/common/dt-overlay.c
> @@ -427,11 +427,7 @@ static int remove_nodes(const struct overlay_track *tracker)
>      {
>          overlay_node = (struct dt_device_node *)tracker->nodes_address[j];
>          if ( overlay_node == NULL )
> -        {
> -            printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n",
> -                   overlay_node->full_name);
>              return -EINVAL;
> -        }
>  
>          rc = remove_descendant_nodes_resources(overlay_node);
>          if ( rc )
> -- 
> 2.42.0
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] xen/common: Don't dereference overlay_node after checking that it is NULL
  2024-01-11 12:09 [PATCH v2] xen/common: Don't dereference overlay_node after checking that it is NULL Javi Merino
  2024-01-11 21:51 ` Vikram Garhwal
@ 2024-01-12 11:04 ` Julien Grall
  1 sibling, 0 replies; 3+ messages in thread
From: Julien Grall @ 2024-01-12 11:04 UTC (permalink / raw)
  To: Javi Merino, xen-devel; +Cc: Vikram Garhwal, Stefano Stabellini

Hi Javi,

On 11/01/2024 12:09, Javi Merino wrote:
> In remove_nodes(), overlay_node is dereferenced when printing the
> error message even though it is known to be NULL.  Return without
> printing as an error message is already printed by the caller.
> 
> The semantic patch that spots this code is available in
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/scripts/coccinelle/null/deref_null.cocci?id=1f874787ed9a2d78ed59cb21d0d90ac0178eceb0
> 
> Fixes: 7e5c4a8b86f1 ("xen/arm: Implement device tree node removal functionalities")
> Signed-off-by: Javi Merino <javi.merino@cloud.com>

Acked-by: Julien Grall <jgrall@amazon.com>

And committed.

Cheers,

-- 
Julien Grall


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-01-12 11:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-11 12:09 [PATCH v2] xen/common: Don't dereference overlay_node after checking that it is NULL Javi Merino
2024-01-11 21:51 ` Vikram Garhwal
2024-01-12 11:04 ` Julien Grall

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.