diff options
author | Chris Rees <crees@FreeBSD.org> | 2012-05-27 17:39:43 +0000 |
---|---|---|
committer | Chris Rees <crees@FreeBSD.org> | 2012-05-27 17:39:43 +0000 |
commit | 9238e610af3e614cb3c864237afdc472d8490af4 (patch) | |
tree | b0b263dd868c14192b9fc629cae75878d71d2109 /sysutils/xfce4-cpugraph-plugin | |
parent | 5ed24b4b2c79943e5a5db2cec65d2d16b5574d8f (diff) | |
download | ports-9238e610af3e614cb3c864237afdc472d8490af4.tar.gz ports-9238e610af3e614cb3c864237afdc472d8490af4.zip |
Notes
Diffstat (limited to 'sysutils/xfce4-cpugraph-plugin')
-rw-r--r-- | sysutils/xfce4-cpugraph-plugin/files/patch-panel-plugin__os.c | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/sysutils/xfce4-cpugraph-plugin/files/patch-panel-plugin__os.c b/sysutils/xfce4-cpugraph-plugin/files/patch-panel-plugin__os.c deleted file mode 100644 index c8828891563c..000000000000 --- a/sysutils/xfce4-cpugraph-plugin/files/patch-panel-plugin__os.c +++ /dev/null @@ -1,70 +0,0 @@ ---- panel-plugin/os.c.orig 2010-11-07 13:58:22.000000000 +0100 -+++ panel-plugin/os.c 2011-12-31 17:30:16.000000000 +0100 -@@ -134,28 +134,54 @@ - #elif defined (__FreeBSD__) - guint detect_cpu_number() - { -- return 1; -+ static gint mib[] = {CTL_HW, HW_NCPU}; -+ gint ncpu; -+ gsize len = sizeof( gint ); -+ if( sysctl( mib, 2, &ncpu, &len, NULL, 0 ) < 0 ) -+ return 0; -+ else -+ return ncpu; - } - - gboolean read_cpu_data( CpuData *data, guint nb_cpu) - { - glong used, total; -- glong cp_time[CPUSTATES]; -- gsize len = sizeof( cp_time ); -+ glong *cp_time; -+ glong *cp_time1; -+ gint i; -+ unsigned int max_cpu; -+ gsize len = sizeof(max_cpu); - -- if( sysctlbyname( "kern.cp_time", &cp_time, &len, NULL, 0 ) < 0 ) -+ data[0].load = 0; -+ if (sysctlbyname("kern.smp.maxid", &max_cpu, &len, NULL, 0) < 0) - return FALSE; -+ -+ max_cpu++; /* max_cpu is 0-based */ -+ if (max_cpu < nb_cpu) -+ return FALSE; /* should not happen */ -+ len = sizeof(glong) * max_cpu * CPUSTATES; -+ cp_time = (glong *) g_malloc(len); - -- used = cp_time[CP_USER] + cp_time[CP_NICE] + cp_time[CP_SYS] + cp_time[CP_INTR]; -- total = used + cp_time[CP_IDLE]; -- if( (total - data[0].previous_total) != 0 ) -- data[0].load = (CPU_SCALE * (used - data[0].previous_used))/(total - data[0].previous_total); -- else -- data[0].load = 0; -- -- data[0].previous_used = used; -- data[0].previous_total = total; -+ if (sysctlbyname( "kern.cp_times", cp_time, &len, NULL, 0 ) < 0) { -+ g_free(cp_time); -+ return FALSE; -+ } -+ for (i = 1; i <= nb_cpu; i++ ) -+ { -+ cp_time1 = &cp_time[CPUSTATES * (i - 1)]; -+ used = cp_time1[CP_USER] + cp_time1[CP_NICE] + cp_time1[CP_SYS] + cp_time1[CP_INTR]; -+ total = used + cp_time1[CP_IDLE]; -+ if( (total - data[i].previous_total) != 0 ) -+ data[i].load = (CPU_SCALE * (used - data[i].previous_used))/(total - data[i].previous_total); -+ else -+ data[i].load = 0; - -+ data[i].previous_used = used; -+ data[i].previous_total = total; -+ data[0].load += data[i].load; -+ } -+ data[0].load /= nb_cpu; -+ g_free(cp_time); - return TRUE; - } - |