Re: Unused local variable load_addr in load_elf_binary()

From: Akira Kawata
Date: Mon Dec 06 2021 - 19:01:58 EST


On Mon, Dec 06, 2021 at 04:46:01PM +0100, Lukas Bulwahn wrote:
> Dear Akira-san,
>
> With commit 0c9333606e30 ("fs/binfmt_elf: Fix AT_PHDR for unusual ELF
> files"), you have changed load_elf_binary() in ./fs/binfmt_elf.c in a
> way such that the local variable load_addr in load_elf_binary() is not
> used anymore.
>
> I had a quick look at the code and I think the following refactoring
> would be good:
>
> 1. Remove the definition of load_addr and its unneeded computation of load_addr
>
> 2. Rename load_addr_set to first (or a similar name) to represent that
> this variable is not linked to the non-existing load_addr, but states
> that it captures the first iteration of the loop. Note that first has
> the inverse meaning of load_addr_set.
>
> The issue was reported by make clang-analyzer:
>
> ./fs/binfmt_elf.c:1167:5: warning: Value stored to 'load_addr' is
> never read [clang-analyzer-deadcode.DeadStores]
> load_addr += load_bias;
> ^ ~~~~~~~~~
>
>
> Best regards,
>
> Lukas

Thank you for your comments. Should I send a new patch, or change
the existing patch in linux-next?

Akira