Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp872468yba; Wed, 3 Apr 2019 22:52:38 -0700 (PDT) X-Google-Smtp-Source: APXvYqzeWew27RXRbwoL0ipq9gn8/60t1Dj6BZ+UezTOgo/KQh8rKUD90xor1zu0uWDZkBjJXAel X-Received: by 2002:a65:6150:: with SMTP id o16mr3892316pgv.285.1554357158769; Wed, 03 Apr 2019 22:52:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1554357158; cv=none; d=google.com; s=arc-20160816; b=MYiK6YLd1UMYir5UyhvoHXRhdBIWLdTwgKLwA3Br6REzVhrm852mXykmWC1QmZ809g duY3ynb+bONs66hmFwZ2R0wJHTWRH8IMcpJTbCxwRB83LXED2kEAlZj5YWAF63SC+q28 sXo4VBfFTyDnmqjw9QTi4v7Ey/BB0rtV8Cg/OZFYu4EMpr94KCXY5Bg0/GRqojBu6nUC 3fXJXD3fuBDVxRQJespOLCTUqHUOcaOSC/kg0GUuZX1pinQ8PuQkqOtLKjD2/wBiolt4 hTwqGg0ICXiAy424PEqDilsT/p7wYIDUebyW2A6IPsds8ffXLkAlS40CeNEPWz41j0Q3 OIPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=YdGdDJHeCmQC+RW7k1h8mpRrLzlQKPKkXRLdFADEvXU=; b=QZxSvzNUlqvjYCxwrzCaBha2l7wAwCNpblwc5gHxQh+qyQvFKO5n9vw50/a1wamaAq bswCI38Ur3CWCEYjjMFgcXC6kehGLhU6Zg1t12sUvpCagmHvroqBd/7Fmx01UeO8LL8n mIw3kB+ktCmH+hsxMKdxeqUmmv6Fplh3PGzJMjixkNXRySrv/R3QAgXX5JE4k5jgyi7H BVokwbqHabOiJl02O5GK6OMqyshnYiAj8imQmzCHwtMV4DHXOLurEsMmudpdGrUslTVW r8ffWqdIz17pgWhl776cm2p4gOes9giSZuqp5M0dIuazsedNfOKDwVbVcGxw7dIlK5Vw gJ+w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f34si16298817ple.52.2019.04.03.22.52.23; Wed, 03 Apr 2019 22:52:38 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726815AbfDDFvi (ORCPT + 99 others); Thu, 4 Apr 2019 01:51:38 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]:47671 "EHLO relay9-d.mail.gandi.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725904AbfDDFvh (ORCPT ); Thu, 4 Apr 2019 01:51:37 -0400 X-Originating-IP: 79.86.19.127 Received: from alex.numericable.fr (127.19.86.79.rev.sfr.net [79.86.19.127]) (Authenticated sender: alex@ghiti.fr) by relay9-d.mail.gandi.net (Postfix) with ESMTPSA id D845CFF808; Thu, 4 Apr 2019 05:51:29 +0000 (UTC) From: Alexandre Ghiti To: Andrew Morton Cc: Christoph Hellwig , Russell King , Catalin Marinas , Will Deacon , Ralf Baechle , Paul Burton , James Hogan , Palmer Dabbelt , Albert Ou , Alexander Viro , Luis Chamberlain , Kees Cook , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org, linux-riscv@lists.infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, Alexandre Ghiti Subject: [PATCH v2 0/5] Provide generic top-down mmap layout functions Date: Thu, 4 Apr 2019 01:51:23 -0400 Message-Id: <20190404055128.24330-1-alex@ghiti.fr> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series introduces generic functions to make top-down mmap layout easily accessible to architectures, in particular riscv which was the initial goal of this series. The generic implementation was taken from arm64 and used successively by arm, mips and finally riscv. Note that in addition the series fixes 2 issues: - stack randomization was taken into account even if not necessary. - [1] fixed an issue with mmap base which did not take into account randomization but did not report it to arm and mips, so by moving arm64 into a generic library, this problem is now fixed for both architectures. This work is an effort to factorize architecture functions to avoid code duplication and oversights as in [1]. [1]: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1429066.html Changes in v2 as suggested by Christoph Hellwig: - Preparatory patch that moves randomize_stack_top - Fix duplicate config in riscv - Align #if defined on next line => this gives rise to a checkpatch warning. I found this pattern all around the tree, in the same proportion as the previous pattern which was less pretty: git grep -C 1 -n -P "^#if defined.+\|\|.*\\\\$" Alexandre Ghiti (5): mm, fs: Move randomize_stack_top from fs to mm arm64, mm: Move generic mmap layout functions to mm arm: Use generic mmap top-down layout mips: Use generic mmap top-down layout riscv: Make mmap allocation top-down by default arch/Kconfig | 8 +++ arch/arm/Kconfig | 1 + arch/arm/include/asm/processor.h | 2 - arch/arm/mm/mmap.c | 52 ---------------- arch/arm64/Kconfig | 1 + arch/arm64/include/asm/processor.h | 2 - arch/arm64/mm/mmap.c | 72 ---------------------- arch/mips/Kconfig | 1 + arch/mips/include/asm/processor.h | 5 -- arch/mips/mm/mmap.c | 57 ----------------- arch/riscv/Kconfig | 11 ++++ fs/binfmt_elf.c | 20 ------ include/linux/mm.h | 2 + kernel/sysctl.c | 6 +- mm/util.c | 99 +++++++++++++++++++++++++++++- 15 files changed, 126 insertions(+), 213 deletions(-) -- 2.20.1