From: Ingo Molnar <mingo@kernel.org>
To: Laura Abbott <labbott@redhat.com>
Cc: Russell King <linux@armlinux.org.uk>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will.deacon@arm.com>,
Martin Schwidefsky <schwidefsky@de.ibm.com>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
Kees Cook <keescook@chromium.org>,
Mark Rutland <mark.rutland@arm.com>,
Arnd Bergmann <arnd@arndb.de>,
x86@kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org,
linux-arch@vger.kernel.org
Subject: Re: [RFC][PATCH] treewide: Move set_memory_* functions away from cacheflush.h
Date: Wed, 8 Feb 2017 08:31:16 +0100 [thread overview]
Message-ID: <20170208073116.GA5738@gmail.com> (raw)
In-Reply-To: <1486501816-27600-1-git-send-email-labbott@redhat.com>
* Laura Abbott <labbott@redhat.com> wrote:
> The set_memory_* APIs came out of a desire to have a better way to
> change memory attributes. Many of these attributes were linked to cache
> functionality so the prototypes were put in cacheflush.h. These days,
> the APIs have grown and have a much wider use than just cache APIs. To
> support this growth, split off set_memory_* and friends into a separate
> header file to avoid growing cacheflush.h for APIs that have nothing to
> do with caches.
>
> Signed-off-by: Laura Abbott <labbott@redhat.com>
> ---
> This came out of a comment Russell made while reviewing RODATA test cases
> http://lists.infradead.org/pipermail/linux-arm-kernel/2017-January/480855.html
> While the final result of that series was the rodata code was refactored into
> its own header file, the set_memory_* APIs are still out of place.
>
> This is a simple attempt at moving all the API stubs to their own file.
> Another idea I had was throwing set_memory_{x,nx,ro,rw} in an asm-generic
> file since those are commonly used for module setting across all arches.
>
> This is an RFC to see if this is actually beneficial. The diffstat is not
> negative unfortunately due to header guards in newer files.
> I have patches to convert call sites over to set_memory.h instead of
> cacheflush.h if there is sufficient interest.
> ---
> arch/arm/include/asm/cacheflush.h | 21 +-------
> arch/arm/include/asm/set_memory.h | 32 ++++++++++++
> arch/arm64/include/asm/cacheflush.h | 6 +--
> arch/arm64/include/asm/set_memory.h | 26 ++++++++++
> arch/s390/include/asm/cacheflush.h | 6 +--
> arch/s390/include/asm/set_memory.h | 9 ++++
> arch/x86/include/asm/cacheflush.h | 96 +---------------------------------
> arch/x86/include/asm/set_memory.h | 100 ++++++++++++++++++++++++++++++++++++
> 8 files changed, 171 insertions(+), 125 deletions(-)
> create mode 100644 arch/arm/include/asm/set_memory.h
> create mode 100644 arch/arm64/include/asm/set_memory.h
> create mode 100644 arch/s390/include/asm/set_memory.h
> create mode 100644 arch/x86/include/asm/set_memory.h
LGTM:
Acked-by: Ingo Molnar <mingo@kernel.org>
Thanks,
Ingo
WARNING: multiple messages have this Message-ID (diff)
From: mingo@kernel.org (Ingo Molnar)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC][PATCH] treewide: Move set_memory_* functions away from cacheflush.h
Date: Wed, 8 Feb 2017 08:31:16 +0100 [thread overview]
Message-ID: <20170208073116.GA5738@gmail.com> (raw)
In-Reply-To: <1486501816-27600-1-git-send-email-labbott@redhat.com>
* Laura Abbott <labbott@redhat.com> wrote:
> The set_memory_* APIs came out of a desire to have a better way to
> change memory attributes. Many of these attributes were linked to cache
> functionality so the prototypes were put in cacheflush.h. These days,
> the APIs have grown and have a much wider use than just cache APIs. To
> support this growth, split off set_memory_* and friends into a separate
> header file to avoid growing cacheflush.h for APIs that have nothing to
> do with caches.
>
> Signed-off-by: Laura Abbott <labbott@redhat.com>
> ---
> This came out of a comment Russell made while reviewing RODATA test cases
> http://lists.infradead.org/pipermail/linux-arm-kernel/2017-January/480855.html
> While the final result of that series was the rodata code was refactored into
> its own header file, the set_memory_* APIs are still out of place.
>
> This is a simple attempt at moving all the API stubs to their own file.
> Another idea I had was throwing set_memory_{x,nx,ro,rw} in an asm-generic
> file since those are commonly used for module setting across all arches.
>
> This is an RFC to see if this is actually beneficial. The diffstat is not
> negative unfortunately due to header guards in newer files.
> I have patches to convert call sites over to set_memory.h instead of
> cacheflush.h if there is sufficient interest.
> ---
> arch/arm/include/asm/cacheflush.h | 21 +-------
> arch/arm/include/asm/set_memory.h | 32 ++++++++++++
> arch/arm64/include/asm/cacheflush.h | 6 +--
> arch/arm64/include/asm/set_memory.h | 26 ++++++++++
> arch/s390/include/asm/cacheflush.h | 6 +--
> arch/s390/include/asm/set_memory.h | 9 ++++
> arch/x86/include/asm/cacheflush.h | 96 +---------------------------------
> arch/x86/include/asm/set_memory.h | 100 ++++++++++++++++++++++++++++++++++++
> 8 files changed, 171 insertions(+), 125 deletions(-)
> create mode 100644 arch/arm/include/asm/set_memory.h
> create mode 100644 arch/arm64/include/asm/set_memory.h
> create mode 100644 arch/s390/include/asm/set_memory.h
> create mode 100644 arch/x86/include/asm/set_memory.h
LGTM:
Acked-by: Ingo Molnar <mingo@kernel.org>
Thanks,
Ingo
next prev parent reply other threads:[~2017-02-08 7:31 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-07 21:10 [RFC][PATCH] treewide: Move set_memory_* functions away from cacheflush.h Laura Abbott
2017-02-07 21:10 ` Laura Abbott
2017-02-07 21:25 ` Kees Cook
2017-02-07 21:25 ` Kees Cook
2017-02-07 21:25 ` Kees Cook
2017-02-08 9:28 ` Will Deacon
2017-02-08 9:28 ` Will Deacon
2017-02-08 9:28 ` Will Deacon
2017-02-08 7:31 ` Ingo Molnar [this message]
2017-02-08 7:31 ` Ingo Molnar
2017-02-09 9:59 ` Heiko Carstens
2017-02-09 9:59 ` Heiko Carstens
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=20170208073116.GA5738@gmail.com \
--to=mingo@kernel.org \
--cc=arnd@arndb.de \
--cc=catalin.marinas@arm.com \
--cc=heiko.carstens@de.ibm.com \
--cc=hpa@zytor.com \
--cc=keescook@chromium.org \
--cc=labbott@redhat.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=schwidefsky@de.ibm.com \
--cc=tglx@linutronix.de \
--cc=will.deacon@arm.com \
--cc=x86@kernel.org \
/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.