[Powertop] Wrong common field name in GFX Wakeups event

Igor Zhbanov <i.zhbanov at samsung.com> Wed, 11 Jul 2012 10:15:40 +0400
Newsgroups dev.linux.lists.powertop
Message-ID <[email protected]>
Hello!

I have found that PowerTOP doesn't displays values in "GFX Wakeups/s" column.
It is because of wrong event field name the handle_trace_point() method
expects to find in a trace event.

Here is the patch:
--8<--Cut-here----------------------------------------------------------------
diff -purN powertop/src/process/do_process.cpp powertop-new/src/process/do_process.cpp
--- powertop/src/process/do_process.cpp	2012-07-05 13:06:16.080258858 +0400
+++ powertop-new/src/process/do_process.cpp	2012-07-06 13:31:14.382651388 +0400
@@ -340,7 +340,7 @@ void perf_process_bundle::handle_trace_p
  		int flags;
  		int pid;

-		ret = pevent_get_common_field_val(NULL, event, "flags",&rec,&val, 0);
+		ret = pevent_get_common_field_val(NULL, event, "common_flags",&rec,&val, 0);
  		if (ret<  0)
  			return;
  		flags = (int)val;
@@ -625,7 +625,7 @@ void perf_process_bundle::handle_trace_p
  		class power_consumer *consumer = NULL;
  		int flags;

-		ret = pevent_get_common_field_val(NULL, event, "flags",&rec,&val, 0);
+		ret = pevent_get_common_field_val(NULL, event, "common_flags",&rec,&val, 0);
  		if (ret<  0)
  			return;
  		flags = (int)val;
--8<--------------------------------------------------------------------------

Thank you.

-- 
Best regards,
Igor Zhbanov,
Expert Software Engineer,
phone: +7 (495) 797 25 00 ext 3806
e-mail: i.zhbanov(a)samsung.com

ASWG, Moscow R&D center, Samsung Electronics
12 Dvintsev street, building 1
127018, Moscow, Russian Federation
05-powertop-fix03.diff (text/x-diff, 863 B)
diff -purN powertop/src/process/do_process.cpp powertop-new/src/process/do_process.cpp
--- powertop/src/process/do_process.cpp	2012-07-05 13:06:16.080258858 +0400
+++ powertop-new/src/process/do_process.cpp	2012-07-06 13:31:14.382651388 +0400
@@ -340,7 +340,7 @@ void perf_process_bundle::handle_trace_p
 		int flags;
 		int pid;
 
-		ret = pevent_get_common_field_val(NULL, event, "flags", &rec, &val, 0);
+		ret = pevent_get_common_field_val(NULL, event, "common_flags", &rec, &val, 0);
 		if (ret < 0)
 			return;
 		flags = (int)val;
@@ -625,7 +625,7 @@ void perf_process_bundle::handle_trace_p
 		class power_consumer *consumer = NULL;
 		int flags;
 
-		ret = pevent_get_common_field_val(NULL, event, "flags", &rec, &val, 0);
+		ret = pevent_get_common_field_val(NULL, event, "common_flags", &rec, &val, 0);
 		if (ret < 0)
 			return;
 		flags = (int)val;