From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com ([209.132.183.28]:39868 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751755AbdJFDiH (ORCPT ); Thu, 5 Oct 2017 23:38:07 -0400 From: Baoquan He To: linux-kernel@vger.kernel.org Cc: viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org, oleg@redhat.com, mhocko@kerne.org, keescook@chromium.org, jkosina@suse.cz, mingo@elte.hu, torvalds@linux-foundation.org, Baoquan He Subject: [PATCH 0/3] binfmt_elf: Clean up codes related to total_size passed into elf_map() Date: Fri, 6 Oct 2017 11:37:55 +0800 Message-Id: <1507261078-23615-1-git-send-email-bhe@redhat.com> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Currently total_size passed into elf_map() is non-zero only for dynamic loader, either in load_elf_interp(), or in load_elf_binary() for ET_DYN without INTERP case. Now PIE programs are loaded offset from ELF_ET_DYN_BASE, and map flags has been set as MAP_FIXED, no need to use tatal_size strategy. And in elf_map(), Oleg pointed out that the mmap(total_size) + munmap(extra_size) way looks very ugly. We can search the unmapped area of total_size big, then only map the 1st PT_LOAD segment with the searched address. In this patchset, clean up them all. Baoquan He (3): binfmt_elf: Clean up the variable name of map flags binfmt_elf: Get the total_size only for dynamic loader in load_elf_binary() binfmt_elf: Search an unmapped area with total_size but not map the whole image fs/binfmt_elf.c | 50 +++++++++++++++++++++++++++----------------------- 1 file changed, 27 insertions(+), 23 deletions(-) -- 2.5.5