binfmt_elf: Fix missing SIGKILL for empty PIE

Commit ea08dc5191d9 "fs/binfmt_elf.c: fix bug in loading of PIE
binaries", which was a backport of commit a87938b2e246 upstream,
added a new failure path to load_elf_binary().

Before commit 19d860a140be "handle suicide on late failure exits in
execve() in search_binary_handler()", load_elf_binary() wass
responsible for sending a fatal signal to the task in case of an error
after flushing the old executable.  Add that to the new failure path.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
This commit is contained in:
Ben Hutchings 2019-04-25 22:09:09 +01:00 committed by syphyr
parent d160a7f65c
commit e776f2f7a7
1 changed files with 1 additions and 0 deletions

View File

@ -823,6 +823,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
total_size = total_mapping_size(elf_phdata,
loc->elf_ex.e_phnum);
if (!total_size) {
send_sig(SIGKILL, current, 0);
retval = -EINVAL;
goto out_free_dentry;
}