diff mbox

make dt_scan_depth1_nodes more readable

Message ID alpine.DEB.2.10.1604251121590.4855@sstabellini-ThinkPad-X260 (mailing list archive)
State New, archived
Headers show

Commit Message

Stefano Stabellini April 25, 2016, 10:25 a.m. UTC
From: Mark Rutland <mark.rutland@arm.com>

Improve the readability of dt_scan_depth1_nodes by removing the nested
conditionals.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>

---

Note: this patch is based on xentip/for-linus-4.7

Comments

Will Deacon April 25, 2016, 10:53 a.m. UTC | #1
On Mon, Apr 25, 2016 at 11:25:11AM +0100, Stefano Stabellini wrote:
> From: Mark Rutland <mark.rutland@arm.com>
> 
> Improve the readability of dt_scan_depth1_nodes by removing the nested
> conditionals.
> 
> Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
> 
> ---
> 
> Note: this patch is based on xentip/for-linus-4.7

So how should I merge it? :/

Will

> 
> diff --git a/arch/arm64/kernel/acpi.c b/arch/arm64/kernel/acpi.c
> index 57ee317..6884c76 100644
> --- a/arch/arm64/kernel/acpi.c
> +++ b/arch/arm64/kernel/acpi.c
> @@ -66,17 +66,24 @@ static int __init dt_scan_depth1_nodes(unsigned long node,
>  				       void *data)
>  {
>  	/*
> -	 * Return 1 as soon as we encounter a node at depth 1 that is
> -	 * not the /chosen node, or /hypervisor node with compatible
> -	 * string "xen,xen".
> +	 * Ignore anything not directly under the root node; we'll
> +	 * catch its parent instead.
>  	 */
> -	if (depth == 1 && (strcmp(uname, "chosen") != 0)) {
> -		if (strcmp(uname, "hypervisor") != 0 ||
> -		    !of_flat_dt_is_compatible(node, "xen,xen"))
> -			return 1;
> -	}
> +	if (depth != 1)
> +		return 0;
>  
> -	return 0;
> +	if (strcmp(uname, "chosen") == 0)
> +		return 0;
> +
> +	if (strcmp(uname, "hypervisor") == 0 &&
> +	    of_flat_dt_is_compatible(node, "xen,xen"))
> +		return 0;
> +
> +	/*
> +	 * This node at depth 1 is neither a chosen node nor a xen node,
> +	 * which we do not expect.
> +	 */
> +	return 1;
>  }
>  
>  /*
>
Stefano Stabellini April 25, 2016, 11:04 a.m. UTC | #2
On Mon, 25 Apr 2016, Will Deacon wrote:
> On Mon, Apr 25, 2016 at 11:25:11AM +0100, Stefano Stabellini wrote:
> > From: Mark Rutland <mark.rutland@arm.com>
> > 
> > Improve the readability of dt_scan_depth1_nodes by removing the nested
> > conditionals.
> > 
> > Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> > Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
> > 
> > ---
> > 
> > Note: this patch is based on xentip/for-linus-4.7
> 
> So how should I merge it? :/

I think that if you would like to merge it, it would be easier this time
for me to carry it in my tree. Otherwise you would have to base your
for-linus-4.7 on xentip/for-linus-4.7 and send the pull request after
the Xen pull request -- undesirable.


> > 
> > diff --git a/arch/arm64/kernel/acpi.c b/arch/arm64/kernel/acpi.c
> > index 57ee317..6884c76 100644
> > --- a/arch/arm64/kernel/acpi.c
> > +++ b/arch/arm64/kernel/acpi.c
> > @@ -66,17 +66,24 @@ static int __init dt_scan_depth1_nodes(unsigned long node,
> >  				       void *data)
> >  {
> >  	/*
> > -	 * Return 1 as soon as we encounter a node at depth 1 that is
> > -	 * not the /chosen node, or /hypervisor node with compatible
> > -	 * string "xen,xen".
> > +	 * Ignore anything not directly under the root node; we'll
> > +	 * catch its parent instead.
> >  	 */
> > -	if (depth == 1 && (strcmp(uname, "chosen") != 0)) {
> > -		if (strcmp(uname, "hypervisor") != 0 ||
> > -		    !of_flat_dt_is_compatible(node, "xen,xen"))
> > -			return 1;
> > -	}
> > +	if (depth != 1)
> > +		return 0;
> >  
> > -	return 0;
> > +	if (strcmp(uname, "chosen") == 0)
> > +		return 0;
> > +
> > +	if (strcmp(uname, "hypervisor") == 0 &&
> > +	    of_flat_dt_is_compatible(node, "xen,xen"))
> > +		return 0;
> > +
> > +	/*
> > +	 * This node at depth 1 is neither a chosen node nor a xen node,
> > +	 * which we do not expect.
> > +	 */
> > +	return 1;
> >  }
> >  
> >  /*
> > 
>
Will Deacon April 25, 2016, 11:19 a.m. UTC | #3
On Mon, Apr 25, 2016 at 12:04:53PM +0100, Stefano Stabellini wrote:
> On Mon, 25 Apr 2016, Will Deacon wrote:
> > On Mon, Apr 25, 2016 at 11:25:11AM +0100, Stefano Stabellini wrote:
> > > From: Mark Rutland <mark.rutland@arm.com>
> > > 
> > > Improve the readability of dt_scan_depth1_nodes by removing the nested
> > > conditionals.
> > > 
> > > Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> > > Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
> > > 
> > > ---
> > > 
> > > Note: this patch is based on xentip/for-linus-4.7
> > 
> > So how should I merge it? :/
> 
> I think that if you would like to merge it, it would be easier this time
> for me to carry it in my tree. Otherwise you would have to base your
> for-linus-4.7 on xentip/for-linus-4.7 and send the pull request after
> the Xen pull request -- undesirable.

Ok, doesn't look like we'll run into conflicts. I just find it weird that
you'd have a patch with no functional change as a dependency, hence my
preference to queue it in the arm64 tree (where conflicts are more likely).

Will
Stefano Stabellini April 25, 2016, 11:24 a.m. UTC | #4
On Mon, 25 Apr 2016, Will Deacon wrote:
> On Mon, Apr 25, 2016 at 12:04:53PM +0100, Stefano Stabellini wrote:
> > On Mon, 25 Apr 2016, Will Deacon wrote:
> > > On Mon, Apr 25, 2016 at 11:25:11AM +0100, Stefano Stabellini wrote:
> > > > From: Mark Rutland <mark.rutland@arm.com>
> > > > 
> > > > Improve the readability of dt_scan_depth1_nodes by removing the nested
> > > > conditionals.
> > > > 
> > > > Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> > > > Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > 
> > > > ---
> > > > 
> > > > Note: this patch is based on xentip/for-linus-4.7
> > > 
> > > So how should I merge it? :/
> > 
> > I think that if you would like to merge it, it would be easier this time
> > for me to carry it in my tree. Otherwise you would have to base your
> > for-linus-4.7 on xentip/for-linus-4.7 and send the pull request after
> > the Xen pull request -- undesirable.
> 
> Ok, doesn't look like we'll run into conflicts. I just find it weird that
> you'd have a patch with no functional change as a dependency, hence my
> preference to queue it in the arm64 tree (where conflicts are more likely).
 
I see, that makes sense. In that case, would you be happy to take:

https://git.kernel.org/cgit/linux/kernel/git/xen/tip.git/commit/?h=for-linus-4.7&id=df115bb0a0b8ad2f6dc62f8d094c21e77b367e7c

in your tree? That would get rid of any cross dependecies between the
two tree.
Will Deacon April 25, 2016, 12:54 p.m. UTC | #5
On Mon, Apr 25, 2016 at 12:24:03PM +0100, Stefano Stabellini wrote:
> On Mon, 25 Apr 2016, Will Deacon wrote:
> > On Mon, Apr 25, 2016 at 12:04:53PM +0100, Stefano Stabellini wrote:
> > > On Mon, 25 Apr 2016, Will Deacon wrote:
> > > > On Mon, Apr 25, 2016 at 11:25:11AM +0100, Stefano Stabellini wrote:
> > > > > From: Mark Rutland <mark.rutland@arm.com>
> > > > > 
> > > > > Improve the readability of dt_scan_depth1_nodes by removing the nested
> > > > > conditionals.
> > > > > 
> > > > > Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> > > > > Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > > 
> > > > > ---
> > > > > 
> > > > > Note: this patch is based on xentip/for-linus-4.7
> > > > 
> > > > So how should I merge it? :/
> > > 
> > > I think that if you would like to merge it, it would be easier this time
> > > for me to carry it in my tree. Otherwise you would have to base your
> > > for-linus-4.7 on xentip/for-linus-4.7 and send the pull request after
> > > the Xen pull request -- undesirable.
> > 
> > Ok, doesn't look like we'll run into conflicts. I just find it weird that
> > you'd have a patch with no functional change as a dependency, hence my
> > preference to queue it in the arm64 tree (where conflicts are more likely).
>  
> I see, that makes sense. In that case, would you be happy to take:
> 
> https://git.kernel.org/cgit/linux/kernel/git/xen/tip.git/commit/?h=for-linus-4.7&id=df115bb0a0b8ad2f6dc62f8d094c21e77b367e7c
> 
> in your tree? That would get rid of any cross dependecies between the
> two tree.

I can take that and the other patch on top too.

Will
Stefano Stabellini April 25, 2016, 12:56 p.m. UTC | #6
On Mon, 25 Apr 2016, Will Deacon wrote:
> On Mon, Apr 25, 2016 at 12:24:03PM +0100, Stefano Stabellini wrote:
> > On Mon, 25 Apr 2016, Will Deacon wrote:
> > > On Mon, Apr 25, 2016 at 12:04:53PM +0100, Stefano Stabellini wrote:
> > > > On Mon, 25 Apr 2016, Will Deacon wrote:
> > > > > On Mon, Apr 25, 2016 at 11:25:11AM +0100, Stefano Stabellini wrote:
> > > > > > From: Mark Rutland <mark.rutland@arm.com>
> > > > > > 
> > > > > > Improve the readability of dt_scan_depth1_nodes by removing the nested
> > > > > > conditionals.
> > > > > > 
> > > > > > Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> > > > > > Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > > > 
> > > > > > ---
> > > > > > 
> > > > > > Note: this patch is based on xentip/for-linus-4.7
> > > > > 
> > > > > So how should I merge it? :/
> > > > 
> > > > I think that if you would like to merge it, it would be easier this time
> > > > for me to carry it in my tree. Otherwise you would have to base your
> > > > for-linus-4.7 on xentip/for-linus-4.7 and send the pull request after
> > > > the Xen pull request -- undesirable.
> > > 
> > > Ok, doesn't look like we'll run into conflicts. I just find it weird that
> > > you'd have a patch with no functional change as a dependency, hence my
> > > preference to queue it in the arm64 tree (where conflicts are more likely).
> >  
> > I see, that makes sense. In that case, would you be happy to take:
> > 
> > https://git.kernel.org/cgit/linux/kernel/git/xen/tip.git/commit/?h=for-linus-4.7&id=df115bb0a0b8ad2f6dc62f8d094c21e77b367e7c
> > 
> > in your tree? That would get rid of any cross dependecies between the
> > two tree.
> 
> I can take that and the other patch on top too.

Perfect. I'll remove df115bb0a0b8ad2f6dc62f8d094c21e77b367e7c from xentip/for-linus-4.7.

Thanks,

Stefano
diff mbox

Patch

diff --git a/arch/arm64/kernel/acpi.c b/arch/arm64/kernel/acpi.c
index 57ee317..6884c76 100644
--- a/arch/arm64/kernel/acpi.c
+++ b/arch/arm64/kernel/acpi.c
@@ -66,17 +66,24 @@  static int __init dt_scan_depth1_nodes(unsigned long node,
 				       void *data)
 {
 	/*
-	 * Return 1 as soon as we encounter a node at depth 1 that is
-	 * not the /chosen node, or /hypervisor node with compatible
-	 * string "xen,xen".
+	 * Ignore anything not directly under the root node; we'll
+	 * catch its parent instead.
 	 */
-	if (depth == 1 && (strcmp(uname, "chosen") != 0)) {
-		if (strcmp(uname, "hypervisor") != 0 ||
-		    !of_flat_dt_is_compatible(node, "xen,xen"))
-			return 1;
-	}
+	if (depth != 1)
+		return 0;
 
-	return 0;
+	if (strcmp(uname, "chosen") == 0)
+		return 0;
+
+	if (strcmp(uname, "hypervisor") == 0 &&
+	    of_flat_dt_is_compatible(node, "xen,xen"))
+		return 0;
+
+	/*
+	 * This node at depth 1 is neither a chosen node nor a xen node,
+	 * which we do not expect.
+	 */
+	return 1;
 }
 
 /*