1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ASMS390_SET_MEMORY_H
3 #define _ASMS390_SET_MEMORY_H
5 #include <linux/mutex.h>
7 extern struct mutex cpa_mutex
;
9 #define SET_MEMORY_RO 1UL
10 #define SET_MEMORY_RW 2UL
11 #define SET_MEMORY_NX 4UL
12 #define SET_MEMORY_X 8UL
14 int __set_memory(unsigned long addr
, int numpages
, unsigned long flags
);
16 static inline int set_memory_ro(unsigned long addr
, int numpages
)
18 return __set_memory(addr
, numpages
, SET_MEMORY_RO
);
21 static inline int set_memory_rw(unsigned long addr
, int numpages
)
23 return __set_memory(addr
, numpages
, SET_MEMORY_RW
);
26 static inline int set_memory_nx(unsigned long addr
, int numpages
)
28 return __set_memory(addr
, numpages
, SET_MEMORY_NX
);
31 static inline int set_memory_x(unsigned long addr
, int numpages
)
33 return __set_memory(addr
, numpages
, SET_MEMORY_X
);