Skip to contentSkip to conversation

perf python: Initialize 'page_size' variable

tip:perf/urgent tip-bot for Arnaldo Carvalho de Melo 1 participant 1 message Oct 20, 2012 perf events

lore
Share & tools
lore
#0 lore raw
Commit-ID:  356712f6e296fdae1edae51b96b485ed830bdc0c
Gitweb:     http://git.kernel.org/tip/356712f6e296fdae1edae51b96b485ed830bdc0c
Author:     Arnaldo Carvalho de Melo <[email protected]>
AuthorDate: Tue, 16 Oct 2012 14:51:04 -0300
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Wed, 17 Oct 2012 11:45:38 -0300

perf python: Initialize 'page_size' variable

The commit 0c1fe6b:

'perf tools: Have the page size value available for all tools'

Broke the python binding because the global variable 'page_size' is initialized on the main() routine, that is not called when using just the python binding, causing evlist.mmap() to fail because it expects that variable to be initialized to the system's page size.

Fix it by initializing it on the binding init routine.

Cc David Ahern <[email protected]>
Cc Frederic Weisbecker <[email protected]>
Cc Jiri Olsa <[email protected]>
Cc Mike Galbraith <[email protected]>
Cc Namhyung Kim <[email protected]>
Cc Paul Mackerras <[email protected]>
Cc Peter Zijlstra <[email protected]>
Cc Stephane Eranian <[email protected]>
---
 tools/perf/util/python.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
tools/perf/util/python.c +2 -0
index 9181bf2..a2657fd 100644
@@ -1015,6 +1015,8 @@ PyMODINIT_FUNC initperf(void)
 	    pyrf_cpu_map__setup_types() < 0)
 		return;
 
+	page_size = sysconf(_SC_PAGE_SIZE);
+
 	Py_INCREF(&pyrf_evlist__type);
 	PyModule_AddObject(module, "evlist", (PyObject*)&pyrf_evlist__type);