[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20191208171410.GB19716@avx2>
Date:   Sun, 8 Dec 2019 20:14:10 +0300
From:   Alexey Dobriyan <adobriyan@...il.com>
To:     akpm@...ux-foundation.org
Cc:     linux-kernel@...r.kernel.org
Subject: [PATCH] ELF: fix ->start_code calculation
Only executable segments should be accounted to ->start_code
just like they do to ->end_code (correctly).
Signed-off-by: Alexey Dobriyan <adobriyan@...il.com>
---
 fs/binfmt_elf.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--- a/fs/binfmt_elf.c
+++ b/fs/binfmt_elf.c
@@ -997,7 +997,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
 			}
 		}
 		k = elf_ppnt->p_vaddr;
-		if (k < start_code)
+		if ((elf_ppnt->p_flags & PF_X) && k < start_code)
 			start_code = k;
 		if (start_data < k)
 			start_data = k;
Powered by blists - more mailing lists
 
