Skip to contentSkip to conversation

perfmon2 minimal v3: base code

PATCH In review [email protected] 1 participant 1 message Jun 30, 2008

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 2/19 perfmon2 minimal v3: base code

This patch adds the core functions of the perfmon2 subsystem. It creates the toplevel perfmon subdirectory where all perfmon2 generic code lives. Core functions implements initialization, session allocation and terminations.

--

perfmon/Makefile new file +7 -0
Index: linux-next/perfmon/Makefile
===================================================================
@@ -0,0 +1,7 @@
+#
+# Copyright (c) 2005-2006 Hewlett-Packard Development Company, L.P.
+# Contributed by Stephane Eranian <[email protected]>
+#
+obj-y =	perfmon_ctx.o perfmon_file.o \
+	perfmon_attach.o perfmon_res.o \
+	perfmon_init.o
perfmon/perfmon_attach.c new file +86 -0

86 lines not on this page · raw message

perfmon/perfmon_ctx.c new file +164 -0

164 lines not on this page · raw message

perfmon/perfmon_file.c new file +94 -0

94 lines not on this page · raw message

perfmon/perfmon_init.c new file +87 -0

87 lines not on this page · raw message

perfmon/perfmon_priv.h new file +119 -0

119 lines not on this page · raw message

perfmon/perfmon_res.c new file +105 -0

105 lines not on this page · raw message

Makefile +2 -0
Index: linux-next/Makefile
===================================================================
@@ -619,6 +619,8 @@
 core-y		+= kernel/ mm/ fs/ ipc/ security/ crypto/ block/
 core-$(CONFIG_KERNEL_TESTS) += tests/
 
+core-$(CONFIG_PERFMON) += perfmon/
+
 vmlinux-dirs	:= $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
 		     $(core-y) $(core-m) $(drivers-y) $(drivers-m) \
 		     $(net-y) $(net-m) $(libs-y) $(libs-m)))
include/linux/sched.h +3 -0
Index: linux-next/include/linux/sched.h
===================================================================
@@ -1287,6 +1287,9 @@
 	int latency_record_count;
 	struct latency_record latency_record[LT_SAVECOUNT];
 #endif
+#ifdef CONFIG_PERFMON
+	struct pfm_context *pfm_context;
+#endif
 };
 
 /*