Thread (5 messages) 5 messages, 5 authors, 2017-02-09

Re: [RFC][PATCH] treewide: Move set_memory_* functions away from cacheflush.h

From: Heiko Carstens <hidden>
Date: 2017-02-09 10:00:29
Also in: linux-arm-kernel, linux-s390, lkml

On Tue, Feb 07, 2017 at 01:10:16PM -0800, Laura Abbott 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 <redacted>
---
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
For s390:
Acked-by: Heiko Carstens <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help