set_memory.h 740 B

12345678910111213141516171819202122232425262728293031
  1. #ifndef _ASMS390_SET_MEMORY_H
  2. #define _ASMS390_SET_MEMORY_H
  3. #define SET_MEMORY_RO 1UL
  4. #define SET_MEMORY_RW 2UL
  5. #define SET_MEMORY_NX 4UL
  6. #define SET_MEMORY_X 8UL
  7. int __set_memory(unsigned long addr, int numpages, unsigned long flags);
  8. static inline int set_memory_ro(unsigned long addr, int numpages)
  9. {
  10. return __set_memory(addr, numpages, SET_MEMORY_RO);
  11. }
  12. static inline int set_memory_rw(unsigned long addr, int numpages)
  13. {
  14. return __set_memory(addr, numpages, SET_MEMORY_RW);
  15. }
  16. static inline int set_memory_nx(unsigned long addr, int numpages)
  17. {
  18. return __set_memory(addr, numpages, SET_MEMORY_NX);
  19. }
  20. static inline int set_memory_x(unsigned long addr, int numpages)
  21. {
  22. return __set_memory(addr, numpages, SET_MEMORY_X);
  23. }
  24. #endif