Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp613301pxf; Wed, 10 Mar 2021 13:12:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJzvGNCEPC3bGevadjIvWkm4lbOtU4p5SKrNK1RDe/sf3n8DR7WxvLuG6QL7+H31/db/tXOj X-Received: by 2002:a17:906:77c5:: with SMTP id m5mr323310ejn.201.1615410759593; Wed, 10 Mar 2021 13:12:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1615410759; cv=none; d=google.com; s=arc-20160816; b=fTX6kL+fYWdEJJFr60igH5GmCLKovoDqHwsG8e58oSDbCNSrk23p95CZdfaMAucl4W 1/QQ3fqC75acqN6Iq098TfsndwS9GnaI3lWSrDIGrJ13icD5Sw3HnDavZ/W4UJcLtu/z Ox3lamhUVvp3aAqqEwqnX+ZbwhCRhuTe6TRqOBjszhQUH8i39ot5f9J0ytPmm4BhKz7e 9SbOs9QhrBI5HLt9rEnUfxUrt5Uun8DVvw7r9qkobcBsvK5lC0uQ8TMVaY3Wt9IlOtXz 1MdOdCwH0b7N7SEqc8lo7cme5aURbiKf96PRR3/xEhvrLdpuSbL1JLL8Cz6nsPMkA+76 vUAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=BuHJsqiyxgLTfrESA1yCLCvt6V7sdg+hKUU6wtQk6VE=; b=u38UUjp7adE1hOlj/CSt5LGqWJktFNDHQivgVu5nkC5+zglyAp5pFjKDDTIHB8PRGx h0W17dyDACW84o/TIDVzNzo/ExmWGwKsezYv4x2BOWBNGT/VtuG6O8fmFiTeAyXYmWrg 8C18Zxc1DPy3NTOEF1Cszzr8mPVMfziBEXpoh6pXnDSTkbJNd99t2UhmHrfENxA394pU TPbq15NGQL6fj3LQ+TOw4Pa3VaL30y4mo61KoBwD/CxOdtqjeZB1C3p2l1mB+YNDGLti 3crzxLHFaGoTLtTpQjjJ3/6RUYhzCx71vJdLSbWKfWDxWjXXXbcKpxvvcyoWqPDDfsJj YJVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="i0/QmL4Z"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id rh9si361969ejb.341.2021.03.10.13.12.16; Wed, 10 Mar 2021 13:12:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="i0/QmL4Z"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232021AbhCJVIv (ORCPT + 99 others); Wed, 10 Mar 2021 16:08:51 -0500 Received: from mail.kernel.org ([198.145.29.99]:35284 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231207AbhCJVI0 (ORCPT ); Wed, 10 Mar 2021 16:08:26 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 375CB64FD0 for ; Wed, 10 Mar 2021 21:08:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1615410506; bh=LNLeEWghXkIt/oUlWgRYrFr83oynDcgDF0s3ejym2KU=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=i0/QmL4ZzLLOTbEAa606xhes1blfEB6MvhnUTOqiOcI5t8ekfl2yxC0RmI0mqfAka W35XzGuRR8x3esIGMjtq/O8Acdu0h4tUq3vJB4ieupj8g3PCJ1oaXk8ayw9U39fd9l OH9QM4nI/bqCIfPOkX/8GVA51Wy4nHpC3JTQ0dgLdgAIQ682D2bhtVscS8zr/mHwqb l+M5WquHt0JMaVNkiaqd646FRxIA4eZ5Ku1O6PzIo4ssvTZNeZES39okLFEHiJWKbp gXg+c6beLMjsw6+DLJqhQd+AD7c3aRgH/VMYjxFz8MmDFawQg3s4SqIhkKSZWyXiKs e5wEDcrjxhY3w== Received: by mail-oi1-f170.google.com with SMTP id o22so10969909oic.3 for ; Wed, 10 Mar 2021 13:08:26 -0800 (PST) X-Gm-Message-State: AOAM531+z8XPPDayqvs1PYIRVcPP+Vh79CderVRqBjz6wRvWJtrhH7WB Ow+ul7MBw3JY3zNqQcGi+Ei/ey34nu9jaM8ewkQ= X-Received: by 2002:aca:5e85:: with SMTP id s127mr3623525oib.67.1615410505313; Wed, 10 Mar 2021 13:08:25 -0800 (PST) MIME-Version: 1.0 References: <20210225112122.2198845-1-arnd@kernel.org> <20210226211323.arkvjnr4hifxapqu@google.com> <1614559739.p25z5x88wl.astroid@bobo.none> In-Reply-To: From: Arnd Bergmann Date: Wed, 10 Mar 2021 22:08:09 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] [RFC] arm64: enable HAVE_LD_DEAD_CODE_DATA_ELIMINATION To: Masahiro Yamada Cc: Nicholas Piggin , Fangrui Song , Ard Biesheuvel , Andrew Scull , Mark Brown , Catalin Marinas , clang-built-linux , David Brazdil , Geert Uytterhoeven , Ionela Voinescu , Kees Cook , Kristina Martsenko , Linux ARM , "linux-kernel@vger.kernel.org" , Mark Rutland , Marc Zyngier , Nathan Chancellor , Nick Desaulniers , Vincenzo Frascino , Will Deacon , Nicolas Pitre Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Mar 10, 2021 at 9:50 PM Masahiro Yamada wrote: > On Mon, Mar 1, 2021 at 10:11 AM Nicholas Piggin wrote: > > Excerpts from Arnd Bergmann's message of February 27, 2021 7:49 pm: > > masahiro@oscar:~/ref/linux$ echo 'void this_func_is_unused(void) {}' > >> kernel/cpu.c > masahiro@oscar:~/ref/linux$ export > CROSS_COMPILE=/home/masahiro/tools/powerpc-10.1.0/bin/powerpc-linux- > masahiro@oscar:~/ref/linux$ make ARCH=powerpc defconfig > masahiro@oscar:~/ref/linux$ ./scripts/config -e EXPERT > masahiro@oscar:~/ref/linux$ ./scripts/config -e LD_DEAD_CODE_DATA_ELIMINATION > masahiro@oscar:~/ref/linux$ > ~/tools/powerpc-10.1.0/bin/powerpc-linux-nm -n vmlinux | grep > this_func > c000000000170560 T .this_func_is_unused > c000000001d8d560 D this_func_is_unused > masahiro@oscar:~/ref/linux$ grep DEAD_CODE_ .config > CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y > CONFIG_LD_DEAD_CODE_DATA_ELIMINATION=y > > > If I remember correctly, > LD_DEAD_CODE_DATA_ELIMINATION dropped unused functions > when I tried it last time. > > > I also tried arm64 with a HAVE_LD_DEAD_CODE_DATA_ELIMINATION hack. > The result was the same. > > > > Am I missing something? It's possible that it only works in combination with CLANG_LTO now because something broke. I definitely saw a reduction in kernel size when both options are enabled, but did not try a simple test case like you did. Maybe some other reference gets created that prevents the function from being garbage-collected unless that other option is removed as well? Arnd