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>