From patchwork Wed Oct 16 16:23:59 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vineet Gupta X-Patchwork-Id: 11193749 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6A91614ED for ; Wed, 16 Oct 2019 16:24:10 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 36ACD21835 for ; Wed, 16 Oct 2019 16:24:10 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=synopsys.com header.i=@synopsys.com header.b="TRjBnf8G" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 36ACD21835 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=synopsys.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 373F08E0006; Wed, 16 Oct 2019 12:24:09 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 314F78E0001; Wed, 16 Oct 2019 12:24:09 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1DB888E000A; Wed, 16 Oct 2019 12:24:09 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0096.hostedemail.com [216.40.44.96]) by kanga.kvack.org (Postfix) with ESMTP id EFF4A8E0007 for ; Wed, 16 Oct 2019 12:24:08 -0400 (EDT) Received: from smtpin02.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with SMTP id 863861842BE20 for ; Wed, 16 Oct 2019 16:24:08 +0000 (UTC) X-FDA: 76050169776.02.fire80_6ef3577d7d05 X-Spam-Summary: 2,0,0,27b3e7b0101a4ff8,d41d8cd98f00b204,vineet.gupta1@synopsys.com,::linux-snps-arc@lists.infradead.org:linux-kernel@vger.kernel.org:linux-arch@vger.kernel.org:arnd@arndb.de:will@kernel.org:aneesh.kumar@linux.ibm.com:akpm@linux-foundation.org:npiggin@gmail.com:peterz@infradead.org:kirill.shutemov@linux.intel.com:torvalds@linux-foundation.org:vineet.gupta1@synopsys.com,RULES_HIT:41:355:379:541:800:960:965:966:968:973:988:989:1260:1261:1311:1314:1345:1359:1437:1515:1534:1541:1711:1730:1747:1777:1792:1801:1978:1981:2194:2196:2199:2200:2393:2559:2562:3138:3139:3140:3141:3142:3352:3865:3867:3868:3870:3871:3874:4250:4321:4385:4390:4395:4605:5007:6119:6261:6653:6742:7208:7903:9113:9121:10004:11026:11473:11658:11914:12043:12296:12297:12438:12517:12519:12555:12895:13069:13180:13223:13229:13311:13357:13894:14096:14181:14384:14394:14581:14721:14777:21080:21451:21627,0,RBL:149.117.87.133:@synopsys.com:.lbl8.mailshell.net-62.2.0.100 64.100.201.201,CacheIP:none,Bayesian:0.5 ,0.5,0.5 X-HE-Tag: fire80_6ef3577d7d05 X-Filterd-Recvd-Size: 3694 Received: from smtprelay-out1.synopsys.com (smtprelay-out1.synopsys.com [149.117.87.133]) by imf44.hostedemail.com (Postfix) with ESMTP for ; Wed, 16 Oct 2019 16:24:07 +0000 (UTC) Received: from mailhost.synopsys.com (dc8-mailhost1.synopsys.com [10.13.135.209]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtprelay-out1.synopsys.com (Postfix) with ESMTPS id 049A0C3008; Wed, 16 Oct 2019 16:24:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1571243046; bh=llraKphMWAkZVO2NRbIWH0Hsr8qlC/sbM1GULVRrJUA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=TRjBnf8GTm/MtZQRqem6EfZw/EWLXV54vKOyLdWH41Yi/Zh+abb2M34MgrXYsvbvu cSLcKHn7TtUpDBnZKhqyI4Q4DerBCw6gTIlNunmG0mnnV8C2RyuOx3nKVmqHPnM2vf 6aRdxhq+Yd9BHPUsAxzOXgzgthryy5/ypywUX59dSJil4aKCkYLGHYcYkH443GOOUy DYAprqzRmZ56DMtOvFExxBN5z8KUbUeNFwAZW/+uMqoWVd81KNjFRUwVkf8RaEHbdr WkktoGeB22hOUhjX5yDpb1HPddZuWyd5rtd81CgJa2cAiD+MhLCgu414vwGlkNl1rz xAh/yMqu/fWDw== Received: from vineetg-Latitude-E7450.internal.synopsys.com (vineetg-latitude-e7450.internal.synopsys.com [10.10.161.61]) by mailhost.synopsys.com (Postfix) with ESMTP id 85889A0081; Wed, 16 Oct 2019 16:24:04 +0000 (UTC) From: Vineet Gupta To: linux-mm@kvack.org Cc: linux-snps-arc@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, Arnd Bergmann , Will Deacon , "Aneesh Kumar K . V" , Andrew Morton , Nick Piggin , Peter Zijlstra , "Kirill A . Shutemov" , Linus Torvalds , Vineet Gupta Subject: [PATCH v3 4/5] asm-generic/tlb: stub out pmd_free_tlb() if nopmd Date: Wed, 16 Oct 2019 09:23:59 -0700 Message-Id: <20191016162400.14796-5-vgupta@synopsys.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191016162400.14796-1-vgupta@synopsys.com> References: <20191016162400.14796-1-vgupta@synopsys.com> MIME-Version: 1.0 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: This came up when removing __ARCH_HAS_5LEVEL_HACK for ARC as code bloat. With this patch we see the following code reduction. | bloat-o-meter2 vmlinux-E-elide-p?d_clear_bad vmlinux-F-elide-pmd_free_tlb | add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-112 (-112) | function old new delta | free_pgd_range 422 310 -112 | Total: Before=4137042, After=4136930, chg -1.000000% Note that pmd folding can be tricky: In 2-level setup (where pmd is conceptually folded) most pmd routines are valid and refer to upper levels. In this patch we can, but see next patch for example where we can't Acked-by: Kirill A. Shutemov Signed-off-by: Vineet Gupta --- include/asm-generic/pgtable-nopmd.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/asm-generic/pgtable-nopmd.h b/include/asm-generic/pgtable-nopmd.h index b85b8271a73d..0d9b28cba16d 100644 --- a/include/asm-generic/pgtable-nopmd.h +++ b/include/asm-generic/pgtable-nopmd.h @@ -60,7 +60,7 @@ static inline pmd_t * pmd_offset(pud_t * pud, unsigned long address) static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { } -#define __pmd_free_tlb(tlb, x, a) do { } while (0) +#define pmd_free_tlb(tlb, x, a) do { } while (0) #undef pmd_addr_end #define pmd_addr_end(addr, end) (end)