From: SF Markus Elfring <hidden> Date: 2018-03-11 08:17:19
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
@@ -302,18 +302,14 @@ int setup_new_fdt(const struct kimage *image, void *fdt,ret=fdt_setprop_u64(fdt,chosen_node,"linux,initrd-start",initrd_load_addr);-if(ret<0){-pr_err("Error setting up the new device tree.\n");-return-EINVAL;-}+if(ret<0)+gotoreport_setup_failure;/* initrd-end is the first address after the initrd image. */ret=fdt_setprop_u64(fdt,chosen_node,"linux,initrd-end",initrd_load_addr+initrd_len);-if(ret<0){-pr_err("Error setting up the new device tree.\n");-return-EINVAL;-}+if(ret<0)+gotoreport_setup_failure;ret=fdt_add_mem_rsv(fdt,initrd_load_addr,initrd_len);if(ret){
@@ -325,10 +321,8 @@ int setup_new_fdt(const struct kimage *image, void *fdt,if(cmdline!=NULL){ret=fdt_setprop_string(fdt,chosen_node,"bootargs",cmdline);-if(ret<0){-pr_err("Error setting up the new device tree.\n");-return-EINVAL;-}+if(ret<0)+gotoreport_setup_failure;}else{ret=fdt_delprop(fdt,chosen_node,"bootargs");if(ret&&ret!=-FDT_ERR_NOTFOUND){
@@ -344,10 +338,12 @@ int setup_new_fdt(const struct kimage *image, void *fdt,}ret=fdt_setprop(fdt,chosen_node,"linux,booted-from-kexec",NULL,0);-if(ret){-pr_err("Error setting up the new device tree.\n");-return-EINVAL;-}+if(ret)+gotoreport_setup_failure;return0;++report_setup_failure:+pr_err("Error setting up the new device tree.\n");+return-EINVAL;}
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
--
Thiago Jung Bauermann
IBM Linux Technology Center
From: Dan Carpenter <hidden> Date: 2018-03-15 11:59:00
On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
SF Markus Elfring [off-list ref] writes:
quoted
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
You know that compilers already re-use string constants so this doesn't
actually save memory? Also we should be preserving the error codes
instead of always returning -EINVAL.
regards,
dan carpenter
From: Joe Perches <joe@perches.com> Date: 2018-03-15 15:03:54
On Thu, 2018-03-15 at 14:57 +0300, Dan Carpenter wrote:
On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
quoted
SF Markus Elfring [off-list ref] writes:
quoted
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
You know that compilers already re-use string constants so this doesn't
actually save memory?
And modern compilers create their own jump labels
so this doesn't change object code either?
On Thu, 2018-03-15 at 14:57 +0300, Dan Carpenter wrote:
quoted
On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
quoted
SF Markus Elfring [off-list ref] writes:
quoted
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
You know that compilers already re-use string constants so this doesn't
actually save memory?
And modern compilers create their own jump labels
so this doesn't change object code either?
IMHO it's an improvement to the source code itself. I wasn't thinking
about the object file.
--
Thiago Jung Bauermann
IBM Linux Technology Center
From: Michael Ellerman <mpe@ellerman.id.au> Date: 2018-03-16 10:27:00
Dan Carpenter [off-list ref] writes:
On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
quoted
SF Markus Elfring [off-list ref] writes:
quoted
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
You know that compilers already re-use string constants so this doesn't
actually save memory?
Sure, but it's still clearer to only have the string appear once in the
code.
Also we should be preserving the error codes
instead of always returning -EINVAL.
The error codes come from libfdt code, so they don't necessarily make
sense in the kernel. eg. FDT_ERR_NOSPACE == 3 == ESRCH.
Perhaps we should be trying harder to convert them, but that's a
criticism of the original code not this patch.
cheers
From: Michael Ellerman <mpe@ellerman.id.au> Date: 2018-03-16 10:29:58
Joe Perches [off-list ref] writes:
On Thu, 2018-03-15 at 14:57 +0300, Dan Carpenter wrote:
quoted
On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
quoted
SF Markus Elfring [off-list ref] writes:
quoted
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
You know that compilers already re-use string constants so this doesn't
actually save memory?
And modern compilers create their own jump labels
so this doesn't change object code either?
I must have missed the memo about us only changing source code if it
results in better object code.
cheers
From: Dan Carpenter <hidden> Date: 2018-03-16 10:36:11
On Fri, Mar 16, 2018 at 09:26:53PM +1100, Michael Ellerman wrote:
Dan Carpenter [off-list ref] writes:
quoted
On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
quoted
SF Markus Elfring [off-list ref] writes:
quoted
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
---
arch/powerpc/kernel/machine_kexec_file_64.c | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
I liked it. Thanks!
Reviewed-by: Thiago Jung Bauermann <redacted>
You know that compilers already re-use string constants so this doesn't
actually save memory?
Sure, but it's still clearer to only have the string appear once in the
code.
To me the original was better.
quoted
Also we should be preserving the error codes
instead of always returning -EINVAL.
The error codes come from libfdt code, so they don't necessarily make
sense in the kernel. eg. FDT_ERR_NOSPACE == 3 == ESRCH.
Perhaps we should be trying harder to convert them, but that's a
criticism of the original code not this patch.
Ah. You're right. I look at the patch in context, sorry.
regards,
dan carpenter
From: Michael Ellerman <hidden> Date: 2018-08-13 11:24:32
On Sun, 2018-03-11 at 08:16:47 UTC, SF Markus Elfring wrote:
From: Markus Elfring <redacted>
Date: Sun, 11 Mar 2018 09:03:42 +0100
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <redacted>
Reviewed-by: Thiago Jung Bauermann <redacted>