diff options
-rw-r--r-- | include/linux/memory.h | 6 | ||||
-rw-r--r-- | mm/memory.c | 10 |
2 files changed, 16 insertions, 0 deletions
diff --git a/include/linux/memory.h b/include/linux/memory.h index 3fdc10806d31..86a6c0f0518d 100644 --- a/include/linux/memory.h +++ b/include/linux/memory.h | |||
@@ -99,4 +99,10 @@ enum mem_add_context { BOOT, HOTPLUG }; | |||
99 | #define hotplug_memory_notifier(fn, pri) do { } while (0) | 99 | #define hotplug_memory_notifier(fn, pri) do { } while (0) |
100 | #endif | 100 | #endif |
101 | 101 | ||
102 | /* | ||
103 | * Kernel text modification mutex, used for code patching. Users of this lock | ||
104 | * can sleep. | ||
105 | */ | ||
106 | extern struct mutex text_mutex; | ||
107 | |||
102 | #endif /* _LINUX_MEMORY_H_ */ | 108 | #endif /* _LINUX_MEMORY_H_ */ |
diff --git a/mm/memory.c b/mm/memory.c index baa999e87cd2..05fab3bc5b4b 100644 --- a/mm/memory.c +++ b/mm/memory.c | |||
@@ -48,6 +48,8 @@ | |||
48 | #include <linux/rmap.h> | 48 | #include <linux/rmap.h> |
49 | #include <linux/module.h> | 49 | #include <linux/module.h> |
50 | #include <linux/delayacct.h> | 50 | #include <linux/delayacct.h> |
51 | #include <linux/kprobes.h> | ||
52 | #include <linux/mutex.h> | ||
51 | #include <linux/init.h> | 53 | #include <linux/init.h> |
52 | #include <linux/writeback.h> | 54 | #include <linux/writeback.h> |
53 | #include <linux/memcontrol.h> | 55 | #include <linux/memcontrol.h> |
@@ -99,6 +101,14 @@ int randomize_va_space __read_mostly = | |||
99 | 2; | 101 | 2; |
100 | #endif | 102 | #endif |
101 | 103 | ||
104 | /* | ||
105 | * mutex protecting text section modification (dynamic code patching). | ||
106 | * some users need to sleep (allocating memory...) while they hold this lock. | ||
107 | * | ||
108 | * NOT exported to modules - patching kernel text is a really delicate matter. | ||
109 | */ | ||
110 | DEFINE_MUTEX(text_mutex); | ||
111 | |||
102 | static int __init disable_randmaps(char *s) | 112 | static int __init disable_randmaps(char *s) |
103 | { | 113 | { |
104 | randomize_va_space = 0; | 114 | randomize_va_space = 0; |