All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] jump_label: fix jump_label update
@ 2011-06-21  2:35 Xiao Guangrong
  2011-06-21  9:44 ` Jiri Olsa
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Xiao Guangrong @ 2011-06-21  2:35 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Steven Rostedt, Jason Baron, Jiri Olsa, LKML

The key of module is out of __stop___jump_table, it causes the events
of modules does not work

Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
---
 kernel/jump_label.c |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/kernel/jump_label.c b/kernel/jump_label.c
index fa27e75..a8ce450 100644
--- a/kernel/jump_label.c
+++ b/kernel/jump_label.c
@@ -375,15 +375,19 @@ int jump_label_text_reserved(void *start, void *end)
 
 static void jump_label_update(struct jump_label_key *key, int enable)
 {
-	struct jump_entry *entry = key->entries;
-
-	/* if there are no users, entry can be NULL */
-	if (entry)
-		__jump_label_update(key, entry, __stop___jump_table, enable);
+	struct jump_entry *entry = key->entries, *stop = __stop___jump_table;
 
 #ifdef CONFIG_MODULES
+	struct module *mod = __module_address((jump_label_t)key);
+
 	__jump_label_mod_update(key, enable);
+
+	if (mod)
+		stop = mod->jump_entries + mod->num_jump_entries;
 #endif
+	/* if there are no users, entry can be NULL */
+	if (entry)
+		__jump_label_update(key, entry, stop, enable);
 }
 
 #endif
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-07-01 15:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-21  2:35 [PATCH v2] jump_label: fix jump_label update Xiao Guangrong
2011-06-21  9:44 ` Jiri Olsa
2011-06-21 15:47   ` Jason Baron
2011-06-21 15:44 ` Jason Baron
2011-06-23 12:22 ` Avi Kivity
2011-06-23 12:45   ` Avi Kivity
2011-06-23 17:44     ` Steven Rostedt
2011-07-01 15:12 ` [tip:perf/urgent] jump_label: Fix jump_label update for modules tip-bot for Xiao Guangrong

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.