Re: [PATCH v4 0/2] [PATCH v4 0/2] fs/binfmt_elf: Fix AT_PHDR for unusual ELF files

From: Akira Kawata
Date: Sun Dec 12 2021 - 18:35:43 EST


On Mon, Dec 13, 2021 at 08:24:13AM +0900, Akira Kawata wrote:
> These patches fix a bug in AT_PHDR calculation.
>
> We cannot calculate AT_PHDR as the sum of load_addr and exec->e_phoff.
> This is because exec->e_phoff is the offset of PHDRs in the file and the
> address of PHDRs in the memory may differ from it. These patches fix the
> bug by calculating the address of program headers from PT_LOADs
> directly.
>
> Sorry for my latency.
>
> Changes in v4
> - Reflecting comments from Lukas, add a refactoring commit.
>
> Changes in v3:
> - Fix a reported bug from kernel test robot.
>
> Changes in v2:
> - Remove unused load_addr from create_elf_tables.
> - Improve the commit message.
>
> Akira Kawata (2):
> fs/binfmt_elf: Fix AT_PHDR for unusual ELF files
> fs/binfmt_elf: Refactor load_elf_binary function
>
> fs/binfmt_elf.c | 36 +++++++++++++++++++++---------------
> 1 file changed, 21 insertions(+), 15 deletions(-)
>
>
> base-commit: 4eee8d0b64ecc3231040fa68ba750317ffca5c52
> --
> 2.34.1
>

I am sorry for sending duplicated emails by mistake.
Please ignore the later ones.

Akira