Index: kernel/genarch/include/genarch/mm/page_ht.h
===================================================================
--- kernel/genarch/include/genarch/mm/page_ht.h	(revision 98a935ebd156845f2511fad291365f6649289e1f)
+++ kernel/genarch/include/genarch/mm/page_ht.h	(revision c0b54c9d6fa6bb96ee21171d5b8f0c3b58ed0e60)
@@ -57,10 +57,10 @@
 #define PTE_EXECUTABLE(pte)  ((pte)->x != 0)
 
-extern as_operations_t as_ht_operations;
-extern page_mapping_operations_t ht_mapping_operations;
+extern const as_operations_t as_ht_operations;
+extern const page_mapping_operations_t ht_mapping_operations;
 
 extern slab_cache_t *pte_cache;
 extern hash_table_t page_ht;
-extern hash_table_ops_t ht_ops;
+extern const hash_table_ops_t ht_ops;
 
 #endif
Index: kernel/genarch/include/genarch/mm/page_pt.h
===================================================================
--- kernel/genarch/include/genarch/mm/page_pt.h	(revision 98a935ebd156845f2511fad291365f6649289e1f)
+++ kernel/genarch/include/genarch/mm/page_pt.h	(revision c0b54c9d6fa6bb96ee21171d5b8f0c3b58ed0e60)
@@ -140,6 +140,6 @@
 #define PTE_EXECUTABLE(p)  PTE_EXECUTABLE_ARCH((p))
 
-extern as_operations_t as_pt_operations;
-extern page_mapping_operations_t pt_mapping_operations;
+extern const as_operations_t as_pt_operations;
+extern const page_mapping_operations_t pt_mapping_operations;
 
 extern void page_mapping_insert_pt(as_t *, uintptr_t, uintptr_t, unsigned int);
Index: kernel/genarch/src/mm/as_ht.c
===================================================================
--- kernel/genarch/src/mm/as_ht.c	(revision 98a935ebd156845f2511fad291365f6649289e1f)
+++ kernel/genarch/src/mm/as_ht.c	(revision c0b54c9d6fa6bb96ee21171d5b8f0c3b58ed0e60)
@@ -53,5 +53,5 @@
 static bool ht_locked(as_t *);
 
-as_operations_t as_ht_operations = {
+const as_operations_t as_ht_operations = {
 	.page_table_create = ht_create,
 	.page_table_destroy = ht_destroy,
Index: kernel/genarch/src/mm/as_pt.c
===================================================================
--- kernel/genarch/src/mm/as_pt.c	(revision 98a935ebd156845f2511fad291365f6649289e1f)
+++ kernel/genarch/src/mm/as_pt.c	(revision c0b54c9d6fa6bb96ee21171d5b8f0c3b58ed0e60)
@@ -54,5 +54,5 @@
 static bool pt_locked(as_t *);
 
-as_operations_t as_pt_operations = {
+const as_operations_t as_pt_operations = {
 	.page_table_create = ptl0_create,
 	.page_table_destroy = ptl0_destroy,
Index: kernel/genarch/src/mm/page_ht.c
===================================================================
--- kernel/genarch/src/mm/page_ht.c	(revision 98a935ebd156845f2511fad291365f6649289e1f)
+++ kernel/genarch/src/mm/page_ht.c	(revision c0b54c9d6fa6bb96ee21171d5b8f0c3b58ed0e60)
@@ -82,5 +82,5 @@
 
 /** Hash table operations for page hash table. */
-hash_table_ops_t ht_ops = {
+const hash_table_ops_t ht_ops = {
 	.hash = ht_hash,
 	.key_hash = ht_key_hash,
@@ -90,5 +90,5 @@
 
 /** Page mapping operations for page hash table architectures. */
-page_mapping_operations_t ht_mapping_operations = {
+const page_mapping_operations_t ht_mapping_operations = {
 	.mapping_insert = ht_mapping_insert,
 	.mapping_remove = ht_mapping_remove,
Index: kernel/genarch/src/mm/page_pt.c
===================================================================
--- kernel/genarch/src/mm/page_pt.c	(revision 98a935ebd156845f2511fad291365f6649289e1f)
+++ kernel/genarch/src/mm/page_pt.c	(revision c0b54c9d6fa6bb96ee21171d5b8f0c3b58ed0e60)
@@ -58,5 +58,5 @@
 static void pt_mapping_make_global(uintptr_t, size_t);
 
-page_mapping_operations_t pt_mapping_operations = {
+const page_mapping_operations_t pt_mapping_operations = {
 	.mapping_insert = pt_mapping_insert,
 	.mapping_remove = pt_mapping_remove,
