Re: [PATCH] powerpc: Use common error handling code in setup_new_fdt()

From: Michael Ellerman
Date: Fri Mar 16 2018 - 06:27:32 EST


Dan Carpenter <dan.carpenter@xxxxxxxxxx> writes:
> On Wed, Mar 14, 2018 at 06:22:07PM -0300, Thiago Jung Bauermann wrote:
>> SF Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx> writes:
>> > From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
>> > 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 <elfring@xxxxxxxxxxxxxxxxxxxxx>
>> > ---
>> > 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 <bauerman@xxxxxxxxxxxxxxxxxx>
>
> 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