mirror of
https://github.com/sheumann/hush.git
synced 2025-02-26 22:29:56 +00:00
powertop: code shrink
function old new delta process_timer_stats 490 449 -41 Signed-off-by: Maksym Kryzhanovskyy <xmaks@email.cz> Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
This commit is contained in:
parent
9135fd26c4
commit
0ebafcc5b1
@ -399,6 +399,7 @@ static NOINLINE int process_timer_stats(void)
|
|||||||
buf[0] = '\0';
|
buf[0] = '\0';
|
||||||
totalticks = 0;
|
totalticks = 0;
|
||||||
|
|
||||||
|
n = 0;
|
||||||
fp = NULL;
|
fp = NULL;
|
||||||
if (!G.cant_enable_timer_stats)
|
if (!G.cant_enable_timer_stats)
|
||||||
fp = fopen_for_read("/proc/timer_stats");
|
fp = fopen_for_read("/proc/timer_stats");
|
||||||
@ -418,14 +419,24 @@ static NOINLINE int process_timer_stats(void)
|
|||||||
const char *count, *process, *func;
|
const char *count, *process, *func;
|
||||||
char *p;
|
char *p;
|
||||||
int idx;
|
int idx;
|
||||||
|
unsigned cnt;
|
||||||
|
|
||||||
count = skip_whitespace(buf);
|
count = skip_whitespace(buf);
|
||||||
p = strchr(count, ',');
|
p = strchr(count, ',');
|
||||||
if (!p)
|
if (!p)
|
||||||
continue;
|
continue;
|
||||||
*p++ = '\0';
|
*p++ = '\0';
|
||||||
if (strcmp(skip_non_whitespace(count), " total events") == 0)
|
cnt = bb_strtou(count, NULL, 10);
|
||||||
|
if (strcmp(skip_non_whitespace(count), " total events") == 0) {
|
||||||
|
#if ENABLE_FEATURE_POWERTOP_PROCIRQ
|
||||||
|
n = cnt / G.total_cpus;
|
||||||
|
if (n > 0 && n < G.interrupt_0) {
|
||||||
|
sprintf(line, " <interrupt> : %s", "extra timer interrupt");
|
||||||
|
save_line(line, G.interrupt_0 - n);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
if (strchr(count, 'D'))
|
if (strchr(count, 'D'))
|
||||||
continue; /* deferred */
|
continue; /* deferred */
|
||||||
p = skip_whitespace(p); /* points to pid now */
|
p = skip_whitespace(p); /* points to pid now */
|
||||||
@ -471,21 +482,11 @@ static NOINLINE int process_timer_stats(void)
|
|||||||
sprintf(line, "%15.15s : %s", process, func);
|
sprintf(line, "%15.15s : %s", process, func);
|
||||||
//else
|
//else
|
||||||
// sprintf(line, "%s", process);
|
// sprintf(line, "%s", process);
|
||||||
save_line(line, bb_strtoull(count, NULL, 10));
|
save_line(line, cnt);
|
||||||
}
|
}
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
}
|
}
|
||||||
|
|
||||||
n = 0;
|
|
||||||
#if ENABLE_FEATURE_POWERTOP_PROCIRQ
|
|
||||||
if (strstr(buf, " total events")) {
|
|
||||||
n = bb_strtoull(buf, NULL, 10) / G.total_cpus;
|
|
||||||
if (n > 0 && n < G.interrupt_0) {
|
|
||||||
sprintf(line, " <interrupt> : %s", "extra timer interrupt");
|
|
||||||
save_line(line, G.interrupt_0 - n);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user