All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	linux-arch <linux-arch@vger.kernel.org>,
	linux-arm-kernel@lists.infradead.org,
	Ingo Molnar <mingo@redhat.com>,
	Paul Burton <paul.burton@mips.com>,
	linux-mips@vger.kernel.org, x86@kernel.org,
	linux-mtd@lists.infradead.org, Arnd Bergmann <arnd@arndb.de>,
	linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org,
	Dave Hansen <dave@sr71.net>,
	linuxppc-dev@lists.ozlabs.org,
	Michael Ellerman <mpe@ellerman.id.au>
Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING
Date: Thu, 21 Mar 2019 09:01:33 +0100	[thread overview]
Message-ID: <20190321080133.GB3916@osiris> (raw)
In-Reply-To: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com>

On Wed, Mar 20, 2019 at 03:20:27PM +0900, Masahiro Yamada wrote:
> Commit 60a3cdd06394 ("x86: add optimized inlining") introduced
> CONFIG_OPTIMIZE_INLINING, but it has been available only for x86.
> 
> The idea is obviously arch-agnostic although we need some code fixups.
> This commit moves the config entry from arch/x86/Kconfig.debug to
> lib/Kconfig.debug so that all architectures (except MIPS for now) can
> benefit from it.
> 
> At this moment, I added "depends on !MIPS" because fixing 0day bot reports
> for MIPS was complex to me.
> 
> I tested this patch on my arm/arm64 boards.
> 
> This can make a huge difference in kernel image size especially when
> CONFIG_OPTIMIZE_FOR_SIZE is enabled.
> 
> For example, I got 3.5% smaller arm64 kernel image for v5.1-rc1.
> 
>   dec       file
>   18983424  arch/arm64/boot/Image.before
>   18321920  arch/arm64/boot/Image.after

Well, this will change, since now people (have to) start adding
__always_inline annotations on all architectures, most likely until
all have about the same amount of annotations like x86. This will
reduce the benefit.

Not sure if it's really a win that we get the inline vs
__always_inline discussion now on all architectures.

WARNING: multiple messages have this Message-ID (diff)
From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: linux-arch <linux-arch@vger.kernel.org>,
	linux-s390@vger.kernel.org, Dave Hansen <dave@sr71.net>,
	Arnd Bergmann <arnd@arndb.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	x86@kernel.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, Paul Burton <paul.burton@mips.com>,
	Ingo Molnar <mingo@redhat.com>,
	linux-mtd@lists.infradead.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING
Date: Thu, 21 Mar 2019 09:01:33 +0100	[thread overview]
Message-ID: <20190321080133.GB3916@osiris> (raw)
In-Reply-To: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com>

On Wed, Mar 20, 2019 at 03:20:27PM +0900, Masahiro Yamada wrote:
> Commit 60a3cdd06394 ("x86: add optimized inlining") introduced
> CONFIG_OPTIMIZE_INLINING, but it has been available only for x86.
> 
> The idea is obviously arch-agnostic although we need some code fixups.
> This commit moves the config entry from arch/x86/Kconfig.debug to
> lib/Kconfig.debug so that all architectures (except MIPS for now) can
> benefit from it.
> 
> At this moment, I added "depends on !MIPS" because fixing 0day bot reports
> for MIPS was complex to me.
> 
> I tested this patch on my arm/arm64 boards.
> 
> This can make a huge difference in kernel image size especially when
> CONFIG_OPTIMIZE_FOR_SIZE is enabled.
> 
> For example, I got 3.5% smaller arm64 kernel image for v5.1-rc1.
> 
>   dec       file
>   18983424  arch/arm64/boot/Image.before
>   18321920  arch/arm64/boot/Image.after

Well, this will change, since now people (have to) start adding
__always_inline annotations on all architectures, most likely until
all have about the same amount of annotations like x86. This will
reduce the benefit.

Not sure if it's really a win that we get the inline vs
__always_inline discussion now on all architectures.


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

WARNING: multiple messages have this Message-ID (diff)
From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: linux-arch <linux-arch@vger.kernel.org>,
	linux-s390@vger.kernel.org, Dave Hansen <dave@sr71.net>,
	Arnd Bergmann <arnd@arndb.de>,
	x86@kernel.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, Paul Burton <paul.burton@mips.com>,
	Ingo Molnar <mingo@redhat.com>,
	linux-mtd@lists.infradead.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING
Date: Thu, 21 Mar 2019 09:01:33 +0100	[thread overview]
Message-ID: <20190321080133.GB3916@osiris> (raw)
In-Reply-To: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com>

On Wed, Mar 20, 2019 at 03:20:27PM +0900, Masahiro Yamada wrote:
> Commit 60a3cdd06394 ("x86: add optimized inlining") introduced
> CONFIG_OPTIMIZE_INLINING, but it has been available only for x86.
> 
> The idea is obviously arch-agnostic although we need some code fixups.
> This commit moves the config entry from arch/x86/Kconfig.debug to
> lib/Kconfig.debug so that all architectures (except MIPS for now) can
> benefit from it.
> 
> At this moment, I added "depends on !MIPS" because fixing 0day bot reports
> for MIPS was complex to me.
> 
> I tested this patch on my arm/arm64 boards.
> 
> This can make a huge difference in kernel image size especially when
> CONFIG_OPTIMIZE_FOR_SIZE is enabled.
> 
> For example, I got 3.5% smaller arm64 kernel image for v5.1-rc1.
> 
>   dec       file
>   18983424  arch/arm64/boot/Image.before
>   18321920  arch/arm64/boot/Image.after

Well, this will change, since now people (have to) start adding
__always_inline annotations on all architectures, most likely until
all have about the same amount of annotations like x86. This will
reduce the benefit.

Not sure if it's really a win that we get the inline vs
__always_inline discussion now on all architectures.


WARNING: multiple messages have this Message-ID (diff)
From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: linux-arch <linux-arch@vger.kernel.org>,
	linux-s390@vger.kernel.org, Dave Hansen <dave@sr71.net>,
	Arnd Bergmann <arnd@arndb.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	x86@kernel.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, Paul Burton <paul.burton@mips.com>,
	Ingo Molnar <mingo@redhat.com>,
	linux-mtd@lists.infradead.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING
Date: Thu, 21 Mar 2019 09:01:33 +0100	[thread overview]
Message-ID: <20190321080133.GB3916@osiris> (raw)
In-Reply-To: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com>

On Wed, Mar 20, 2019 at 03:20:27PM +0900, Masahiro Yamada wrote:
> Commit 60a3cdd06394 ("x86: add optimized inlining") introduced
> CONFIG_OPTIMIZE_INLINING, but it has been available only for x86.
> 
> The idea is obviously arch-agnostic although we need some code fixups.
> This commit moves the config entry from arch/x86/Kconfig.debug to
> lib/Kconfig.debug so that all architectures (except MIPS for now) can
> benefit from it.
> 
> At this moment, I added "depends on !MIPS" because fixing 0day bot reports
> for MIPS was complex to me.
> 
> I tested this patch on my arm/arm64 boards.
> 
> This can make a huge difference in kernel image size especially when
> CONFIG_OPTIMIZE_FOR_SIZE is enabled.
> 
> For example, I got 3.5% smaller arm64 kernel image for v5.1-rc1.
> 
>   dec       file
>   18983424  arch/arm64/boot/Image.before
>   18321920  arch/arm64/boot/Image.after

Well, this will change, since now people (have to) start adding
__always_inline annotations on all architectures, most likely until
all have about the same amount of annotations like x86. This will
reduce the benefit.

Not sure if it's really a win that we get the inline vs
__always_inline discussion now on all architectures.


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2019-03-21  8:01 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-20  6:20 [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING Masahiro Yamada
2019-03-20  6:20 ` Masahiro Yamada
2019-03-20  6:20 ` Masahiro Yamada
2019-03-20  6:20 ` Masahiro Yamada
2019-03-20  6:40 ` Masahiro Yamada
2019-03-20  6:40   ` Masahiro Yamada
2019-03-20  6:40   ` Masahiro Yamada
2019-03-20  6:40   ` Masahiro Yamada
2019-03-20  9:38   ` Arnd Bergmann
2019-03-20  9:38     ` Arnd Bergmann
2019-03-20  9:38     ` Arnd Bergmann
2019-03-20  9:38     ` Arnd Bergmann
2019-03-20 10:18     ` Masahiro Yamada
2019-03-20 10:18       ` Masahiro Yamada
2019-03-20 10:18       ` Masahiro Yamada
2019-03-20 10:18       ` Masahiro Yamada
2019-03-20 13:04       ` Arnd Bergmann
2019-03-20 13:04         ` Arnd Bergmann
2019-03-20 13:04         ` Arnd Bergmann
2019-03-20 13:04         ` Arnd Bergmann
2019-03-25  6:04         ` Masahiro Yamada
2019-03-25  6:04           ` Masahiro Yamada
2019-03-25  6:04           ` Masahiro Yamada
2019-03-25  6:04           ` Masahiro Yamada
2019-03-20  9:41 ` Arnd Bergmann
2019-03-20  9:41   ` Arnd Bergmann
2019-03-20  9:41   ` Arnd Bergmann
2019-03-20  9:41   ` Arnd Bergmann
2019-03-20 13:34   ` Arnd Bergmann
2019-03-20 13:34     ` Arnd Bergmann
2019-03-20 13:34     ` Arnd Bergmann
2019-03-20 13:34     ` Arnd Bergmann
2019-03-23  8:26     ` LEROY Christophe
2019-03-23  8:26       ` LEROY Christophe
2019-03-23  8:26       ` LEROY Christophe
2019-03-23  8:26       ` LEROY Christophe
2019-03-25  6:44       ` Masahiro Yamada
2019-03-25  6:44         ` Masahiro Yamada
2019-03-25  6:44         ` Masahiro Yamada
2019-03-25  6:44         ` Masahiro Yamada
2019-03-26  6:02         ` Christophe Leroy
2019-03-26  6:02           ` Christophe Leroy
2019-03-26  6:02           ` Christophe Leroy
2019-03-26  6:02           ` Christophe Leroy
2019-04-23  3:26           ` Masahiro Yamada
2019-04-23  3:26             ` Masahiro Yamada
2019-04-23  3:26             ` Masahiro Yamada
2019-03-25  6:10     ` Masahiro Yamada
2019-03-25  6:10       ` Masahiro Yamada
2019-03-25  6:10       ` Masahiro Yamada
2019-03-25  6:10       ` Masahiro Yamada
2019-03-25  6:12       ` Masahiro Yamada
2019-03-25  6:12         ` Masahiro Yamada
2019-03-25  6:12         ` Masahiro Yamada
2019-03-25  6:12         ` Masahiro Yamada
2019-03-25  7:32       ` Arnd Bergmann
2019-03-25  7:32         ` Arnd Bergmann
2019-03-25  7:32         ` Arnd Bergmann
2019-03-25  7:32         ` Arnd Bergmann
2019-03-25  7:54         ` Masahiro Yamada
2019-03-25  7:54           ` Masahiro Yamada
2019-03-25  7:54           ` Masahiro Yamada
2019-03-25  7:54           ` Masahiro Yamada
2019-03-25 10:25           ` Arnd Bergmann
2019-03-25 10:25             ` Arnd Bergmann
2019-03-25 10:25             ` Arnd Bergmann
2019-03-25 10:25             ` Arnd Bergmann
2019-03-25 10:27     ` Arnd Bergmann
2019-03-25 10:27       ` Arnd Bergmann
2019-03-25 10:27       ` Arnd Bergmann
2019-03-25 10:27       ` Arnd Bergmann
2019-03-21  8:01 ` Heiko Carstens [this message]
2019-03-21  8:01   ` Heiko Carstens
2019-03-21  8:01   ` Heiko Carstens
2019-03-21  8:01   ` Heiko Carstens
2019-03-25  6:41   ` Masahiro Yamada
2019-03-25  6:41     ` Masahiro Yamada
2019-03-25  6:41     ` Masahiro Yamada
2019-03-25  6:41     ` Masahiro Yamada
2019-03-23  8:37 ` LEROY Christophe
2019-03-23  8:37   ` LEROY Christophe
2019-03-23  8:37   ` LEROY Christophe
2019-03-23  8:37   ` LEROY Christophe
2019-04-18 13:20 ` Ingo Molnar
2019-04-18 13:20   ` Ingo Molnar
2019-04-18 13:20   ` Ingo Molnar
2019-04-18 13:20   ` Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190321080133.GB3916@osiris \
    --to=heiko.carstens@de.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=dave@sr71.net \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mingo@redhat.com \
    --cc=mpe@ellerman.id.au \
    --cc=paul.burton@mips.com \
    --cc=x86@kernel.org \
    --cc=yamada.masahiro@socionext.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.