diff options
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 45 |
1 files changed, 31 insertions, 14 deletions
diff --git a/init/Kconfig b/init/Kconfig index 0121c0ea3e03..0aa6579504cc 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
@@ -916,31 +916,36 @@ config AIO | |||
916 | by some high performance threaded applications. Disabling | 916 | by some high performance threaded applications. Disabling |
917 | this option saves about 7k. | 917 | this option saves about 7k. |
918 | 918 | ||
919 | config HAVE_PERF_COUNTERS | 919 | config HAVE_PERF_EVENTS |
920 | bool | 920 | bool |
921 | help | 921 | help |
922 | See tools/perf/design.txt for details. | 922 | See tools/perf/design.txt for details. |
923 | 923 | ||
924 | menu "Performance Counters" | 924 | menu "Kernel Performance Events And Counters" |
925 | 925 | ||
926 | config PERF_COUNTERS | 926 | config PERF_EVENTS |
927 | bool "Kernel Performance Counters" | 927 | bool "Kernel performance events and counters" |
928 | default y if PROFILING | 928 | default y if (PROFILING || PERF_COUNTERS) |
929 | depends on HAVE_PERF_COUNTERS | 929 | depends on HAVE_PERF_EVENTS |
930 | select ANON_INODES | 930 | select ANON_INODES |
931 | help | 931 | help |
932 | Enable kernel support for performance counter hardware. | 932 | Enable kernel support for various performance events provided |
933 | by software and hardware. | ||
934 | |||
935 | Software events are supported either build-in or via the | ||
936 | use of generic tracepoints. | ||
933 | 937 | ||
934 | Performance counters are special hardware registers available | 938 | Most modern CPUs support performance events via performance |
935 | on most modern CPUs. These registers count the number of certain | 939 | counter registers. These registers count the number of certain |
936 | types of hw events: such as instructions executed, cachemisses | 940 | types of hw events: such as instructions executed, cachemisses |
937 | suffered, or branches mis-predicted - without slowing down the | 941 | suffered, or branches mis-predicted - without slowing down the |
938 | kernel or applications. These registers can also trigger interrupts | 942 | kernel or applications. These registers can also trigger interrupts |
939 | when a threshold number of events have passed - and can thus be | 943 | when a threshold number of events have passed - and can thus be |
940 | used to profile the code that runs on that CPU. | 944 | used to profile the code that runs on that CPU. |
941 | 945 | ||
942 | The Linux Performance Counter subsystem provides an abstraction of | 946 | The Linux Performance Event subsystem provides an abstraction of |
943 | these hardware capabilities, available via a system call. It | 947 | these software and hardware cevent apabilities, available via a |
948 | system call and used by the "perf" utility in tools/perf/. It | ||
944 | provides per task and per CPU counters, and it provides event | 949 | provides per task and per CPU counters, and it provides event |
945 | capabilities on top of those. | 950 | capabilities on top of those. |
946 | 951 | ||
@@ -948,17 +953,29 @@ config PERF_COUNTERS | |||
948 | 953 | ||
949 | config EVENT_PROFILE | 954 | config EVENT_PROFILE |
950 | bool "Tracepoint profiling sources" | 955 | bool "Tracepoint profiling sources" |
951 | depends on PERF_COUNTERS && EVENT_TRACING | 956 | depends on PERF_EVENTS && EVENT_TRACING |
952 | default y | 957 | default y |
953 | help | 958 | help |
954 | Allow the use of tracepoints as software performance counters. | 959 | Allow the use of tracepoints as software performance events. |
955 | 960 | ||
956 | When this is enabled, you can create perf counters based on | 961 | When this is enabled, you can create perf events based on |
957 | tracepoints using PERF_TYPE_TRACEPOINT and the tracepoint ID | 962 | tracepoints using PERF_TYPE_TRACEPOINT and the tracepoint ID |
958 | found in debugfs://tracing/events/*/*/id. (The -e/--events | 963 | found in debugfs://tracing/events/*/*/id. (The -e/--events |
959 | option to the perf tool can parse and interpret symbolic | 964 | option to the perf tool can parse and interpret symbolic |
960 | tracepoints, in the subsystem:tracepoint_name format.) | 965 | tracepoints, in the subsystem:tracepoint_name format.) |
961 | 966 | ||
967 | config PERF_COUNTERS | ||
968 | bool "Kernel performance counters (old config option)" | ||
969 | depends on HAVE_PERF_EVENTS | ||
970 | help | ||
971 | This config has been obsoleted by the PERF_EVENTS | ||
972 | config option - please see that one for details. | ||
973 | |||
974 | It has no effect on the kernel whether you enable | ||
975 | it or not, it is a compatibility placeholder. | ||
976 | |||
977 | Say N if unsure. | ||
978 | |||
962 | endmenu | 979 | endmenu |
963 | 980 | ||
964 | config VM_EVENT_COUNTERS | 981 | config VM_EVENT_COUNTERS |