On Tue, Feb 7, 2017 at 1:10 PM, Laura Abbott [off-list ref] 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.
Yeah, this is a nice clean up to start on.
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.
It seems like asm-generic would be cleaner, yes? Only a few archs have
anything "special" happening in the resulting header files.
-Kees
--
Kees Cook
Pixel Security