author | Mohana Rao Gorai <mohana.gorai@oracle.com> |
Fri, 26 Sep 2014 04:07:35 -0700 | |
changeset 2114 | 5a98d3204048 |
parent 2107 | components/net-snmp/patches/049.16824703.dyn_cpu.patch@1cda4e19a209 |
permissions | -rw-r--r-- |
2107
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
1 |
--- a/include/net-snmp/agent/hardware/cpu.h 2014-06-09 04:44:56.766491669 -0700 |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
2 |
+++ b/include/net-snmp/agent/hardware/cpu.h 2014-06-09 04:45:47.845551969 -0700 |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
3 |
@@ -52,6 +52,11 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
4 |
netsnmp_cpu_info *next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
5 |
}; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
6 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
7 |
+ /* Auxilary structure used for updating the new cpu list */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
8 |
+struct cpu_idx { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
9 |
+ int idx; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
10 |
+ struct cpu_idx *next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
11 |
+}; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
12 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
13 |
/* |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
14 |
* Possibly not all needed ?? |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
15 |
@@ -60,6 +65,7 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
16 |
netsnmp_cpu_info *netsnmp_cpu_get_next( netsnmp_cpu_info* ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
17 |
netsnmp_cpu_info *netsnmp_cpu_get_byIdx( int, int ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
18 |
netsnmp_cpu_info *netsnmp_cpu_get_byName( char*, int ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
19 |
+int netsnmp_update_cpu_list( struct cpu_idx * ); /* returns the number of deleted cpus */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
20 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
21 |
netsnmp_cache *netsnmp_cpu_get_cache( void ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
22 |
int netsnmp_cpu_load( void ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
23 |
--- a/agent/mibgroup/hardware/cpu/cpu.c 2014-06-09 04:44:56.766855758 -0700 |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
24 |
+++ b/agent/mibgroup/hardware/cpu/cpu.c 2014-06-19 05:07:54.648759853 -0700 |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
25 |
@@ -244,3 +244,59 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
26 |
cpu2->pageIn = cpu->pageIn; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
27 |
cpu2->pageOut = cpu->pageOut; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
28 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
29 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
30 |
+ /* |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
31 |
+ * Updates the cpu list, keeping the cpus whose indices are passed |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
32 |
+ * assumes the passed linked list of indices is sorted in ascending order |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
33 |
+ * returns the number of deleted cpus |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
34 |
+ */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
35 |
+int netsnmp_update_cpu_list( struct cpu_idx *new_cpu_list ) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
36 |
+{ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
37 |
+ netsnmp_cpu_info *prev, *current, *temp1, *temp2; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
38 |
+ int n=0; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
39 |
+ netsnmp_cpu_info *cpu; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
40 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
41 |
+ for( prev=current=_cpu_head; current && new_cpu_list ; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
42 |
+ current=current->next, new_cpu_list=new_cpu_list->next ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
43 |
+ if ( current->idx == new_cpu_list->idx ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
44 |
+ prev=current; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
45 |
+ } else { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
46 |
+ current=current->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
47 |
+ while ( current && (current->idx != new_cpu_list->idx) ) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
48 |
+ current = current->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
49 |
+ if ( !current ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
50 |
+ /*This shouldn't happen. Something went really wrong */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
51 |
+ return -1; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
52 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
53 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
54 |
+ temp1 = prev->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
55 |
+ prev->next = current; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
56 |
+ prev = current; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
57 |
+ /* remove the unassigned cpus */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
58 |
+ while ( temp1 != current ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
59 |
+ temp2 = temp1; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
60 |
+ temp1 = temp1->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
61 |
+ n++; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
62 |
+ SNMP_FREE(temp2->history); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
63 |
+ SNMP_FREE(temp2); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
64 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
65 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
66 |
+ } /*end of for */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
67 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
68 |
+ if ( !current && new_cpu_list ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
69 |
+ /* This shouldn't happen. */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
70 |
+ return -1; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
71 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
72 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
73 |
+ /* Delete the unassigned trailing cpus from the list */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
74 |
+ while ( current ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
75 |
+ temp2 = current; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
76 |
+ current = current->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
77 |
+ n++; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
78 |
+ SNMP_FREE(temp2->history); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
79 |
+ SNMP_FREE(temp2); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
80 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
81 |
+ prev->next = NULL; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
82 |
+ return n; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
83 |
+} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
84 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
85 |
--- a/agent/mibgroup/hardware/cpu/cpu_kstat.c 2014-06-09 04:44:56.766680662 -0700 |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
86 |
+++ b/agent/mibgroup/hardware/cpu/cpu_kstat.c 2014-06-19 04:53:47.176189429 -0700 |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
87 |
@@ -17,16 +17,16 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
88 |
extern kstat_ctl_t *kstat_fd; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
89 |
extern int cpu_num; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
90 |
int _cpu_status(char *state); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
91 |
+static void add_new_kstat_cpu_entry(kstat_t *ksp); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
92 |
+static struct cpu_idx * add_cpu_idx(struct cpu_idx * head, int idx); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
93 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
94 |
/* |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
95 |
* Initialise the list of CPUs on the system |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
96 |
* (including descriptions) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
97 |
*/ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
98 |
void init_cpu_kstat( void ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
99 |
- int i, n=0, clock, state_begin; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
100 |
- char ctype[15], ftype[15], state[10]; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
101 |
+ int n=0; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
102 |
kstat_t *ksp; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
103 |
- kstat_named_t *ks_data; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
104 |
netsnmp_cpu_info *cpu = netsnmp_cpu_get_byIdx( -1, 1 ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
105 |
strcpy(cpu->name, "Overall CPU statistics"); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
106 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
107 |
@@ -41,36 +41,50 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
108 |
if ((strcmp(ksp->ks_module, "cpu_info") == 0) && |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
109 |
(strcmp(ksp->ks_class, "misc" ) == 0)) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
110 |
kstat_read(kstat_fd, ksp, NULL ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
111 |
+ add_new_kstat_cpu_entry(ksp); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
112 |
n++; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
113 |
- clock = 999999; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
114 |
- memset(ctype, 0, sizeof(ctype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
115 |
- memset(ftype, 0, sizeof(ftype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
116 |
- memset(state, 0, sizeof(state)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
117 |
- for (i=0, ks_data = ksp->ks_data; i < ksp->ks_ndata; i++, ks_data++) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
118 |
- if ( strcmp( ks_data->name, "state" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
119 |
- strncpy( state, ks_data->value.c, sizeof(state)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
120 |
- state[sizeof(state)-1] = '\0'; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
121 |
- } else if ( strcmp( ks_data->name, "state_begin" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
122 |
- state_begin = ks_data->value.i32; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
123 |
- } else if ( strcmp( ks_data->name, "cpu_type" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
124 |
- strncpy( ctype, ks_data->value.c, sizeof(ctype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
125 |
- state[sizeof(ctype)-1] = '\0'; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
126 |
- } else if ( strcmp( ks_data->name, "fpu_type" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
127 |
- strncpy( ftype, ks_data->value.c, sizeof(ftype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
128 |
- state[sizeof(ftype)-1] = '\0'; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
129 |
- } else if ( strcmp( ks_data->name, "clock_MHz" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
130 |
- clock = ks_data->value.i32; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
131 |
- } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
132 |
- } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
133 |
- i = ksp->ks_instance; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
134 |
- cpu = netsnmp_cpu_get_byIdx( i, 1 ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
135 |
- sprintf( cpu->name, "cpu%d", i ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
136 |
- sprintf( cpu->descr, "CPU %d Sun %d MHz %s with %s FPU %s", |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
137 |
- i, clock, ctype, ftype, state ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
138 |
- cpu->status = _cpu_status(state); /* XXX - or in 'n_c_a_load' ? */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
139 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
140 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
141 |
- cpu_num = i; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
142 |
+ cpu_num = n; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
143 |
+} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
144 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
145 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
146 |
+ /* |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
147 |
+ * adds the new cpu entry to the exisitng list |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
148 |
+ */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
149 |
+static void |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
150 |
+add_new_kstat_cpu_entry( kstat_t *ksp ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
151 |
+ int i, clock, state_begin; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
152 |
+ char ctype[15], ftype[15], state[10]; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
153 |
+ kstat_named_t *ks_data; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
154 |
+ netsnmp_cpu_info *cpu; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
155 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
156 |
+ clock = 999999; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
157 |
+ memset(ctype, 0, sizeof(ctype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
158 |
+ memset(ftype, 0, sizeof(ftype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
159 |
+ memset(state, 0, sizeof(state)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
160 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
161 |
+ for (i=0, ks_data = ksp->ks_data; i < ksp->ks_ndata; i++, ks_data++) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
162 |
+ if ( strcmp( ks_data->name, "state" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
163 |
+ strncpy( state, ks_data->value.c, sizeof(state)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
164 |
+ state[sizeof(state)-1] = '\0'; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
165 |
+ } else if ( strcmp( ks_data->name, "state_begin" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
166 |
+ state_begin = ks_data->value.i32; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
167 |
+ } else if ( strcmp( ks_data->name, "cpu_type" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
168 |
+ strncpy( ctype, ks_data->value.c, sizeof(ctype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
169 |
+ ctype[sizeof(ctype)-1] = '\0'; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
170 |
+ } else if ( strcmp( ks_data->name, "fpu_type" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
171 |
+ strncpy( ftype, ks_data->value.c, sizeof(ftype)); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
172 |
+ ftype[sizeof(ftype)-1] = '\0'; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
173 |
+ } else if ( strcmp( ks_data->name, "clock_MHz" ) == 0 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
174 |
+ clock = ks_data->value.i32; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
175 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
176 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
177 |
+ i = ksp->ks_instance; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
178 |
+ cpu = netsnmp_cpu_get_byIdx( i, 1 ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
179 |
+ sprintf( cpu->name, "cpu%d", i ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
180 |
+ sprintf( cpu->descr, "CPU %d Sun %d MHz %s with %s FPU %s", i, clock, ctype, ftype, state ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
181 |
+ cpu->status = _cpu_status(state); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
182 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
183 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
184 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
185 |
@@ -78,11 +92,12 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
186 |
* Load the latest CPU usage statistics |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
187 |
*/ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
188 |
int netsnmp_cpu_arch_load( netsnmp_cache *cache, void *magic ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
189 |
- int i=1; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
190 |
+ int i=1, n=0; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
191 |
kstat_t *ksp; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
192 |
cpu_stat_t cs; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
193 |
netsnmp_cpu_info *cpu = netsnmp_cpu_get_byIdx( -1, 0 ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
194 |
netsnmp_cpu_info *cpu2; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
195 |
+ struct cpu_idx *new_cpu_list = NULL, *temp_cpu_idx; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
196 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
197 |
/* Clear overall stats, ready for summing individual CPUs */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
198 |
cpu->user_ticks = 0; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
199 |
@@ -97,6 +112,32 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
200 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
201 |
kstat_chain_update( kstat_fd ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
202 |
DEBUGMSGTL(("cpu", "cpu_kstat load\n ")); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
203 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
204 |
+ /* |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
205 |
+ * The stats update is three step. |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
206 |
+ * First - add in the new cpus' info to the linked list |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
207 |
+ */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
208 |
+ for (ksp = kstat_fd->kc_chain; ksp != NULL; ksp = ksp->ks_next) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
209 |
+ if (ksp->ks_flags & KSTAT_FLAG_INVALID) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
210 |
+ continue; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
211 |
+ if ((strcmp(ksp->ks_module, "cpu_info") == 0) && |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
212 |
+ (strcmp(ksp->ks_class, "misc" ) == 0)) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
213 |
+ kstat_read(kstat_fd, ksp, NULL ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
214 |
+ i = ksp->ks_instance; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
215 |
+ new_cpu_list = add_cpu_idx( new_cpu_list, i); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
216 |
+ cpu2 = netsnmp_cpu_get_byIdx( i, 0 ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
217 |
+ if ( !cpu2 ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
218 |
+ add_new_kstat_cpu_entry(ksp); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
219 |
+ n++; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
220 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
221 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
222 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
223 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
224 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
225 |
+ /* Second - update the CPU list to reflect new kernel structures */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
226 |
+ n -= netsnmp_update_cpu_list( new_cpu_list ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
227 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
228 |
+ /* Third - for updating stats for the new CPU set */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
229 |
for (ksp = kstat_fd->kc_chain; ksp != NULL; ksp = ksp->ks_next) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
230 |
if (ksp->ks_flags & KSTAT_FLAG_INVALID) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
231 |
continue; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
232 |
@@ -104,7 +145,7 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
233 |
i = ksp->ks_instance; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
234 |
cpu2 = netsnmp_cpu_get_byIdx( i, 0 ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
235 |
if ( !cpu2 ) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
236 |
- break; /* or continue ?*/ /*Skip new CPUs */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
237 |
+ continue; /* This shouldn't happen. Inconsistency in kstat CPU data */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
238 |
if ((ksp->ks_type != KSTAT_TYPE_RAW) || |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
239 |
(ksp->ks_data_size != sizeof(cs))|| |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
240 |
(kstat_read(kstat_fd, ksp, &cs) == -1)) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
241 |
@@ -138,9 +179,43 @@ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
242 |
cpu->nCtxSwitches += (unsigned long)cs.cpu_sysinfo.pswitch; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
243 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
244 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
245 |
+ cpu_num += n; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
246 |
+ /* Clean up the temporary CPU index list */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
247 |
+ while(new_cpu_list) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
248 |
+ temp_cpu_idx = new_cpu_list; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
249 |
+ new_cpu_list = new_cpu_list->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
250 |
+ SNMP_FREE(temp_cpu_idx); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
251 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
252 |
return 0; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
253 |
} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
254 |
|
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
255 |
+ /* returns the new head */ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
256 |
+static struct cpu_idx * |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
257 |
+add_cpu_idx(struct cpu_idx * head, int idx) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
258 |
+{ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
259 |
+ struct cpu_idx *cpu_idx, *current; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
260 |
+ cpu_idx = SNMP_MALLOC_TYPEDEF( struct cpu_idx ); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
261 |
+ if ( !cpu_idx ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
262 |
+ DEBUGMSG(("cpu", "(cpu_idx creation failed)\n")); |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
263 |
+ return head; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
264 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
265 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
266 |
+ cpu_idx->idx = idx; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
267 |
+ if ( !head || head->idx > idx ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
268 |
+ cpu_idx->next = head; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
269 |
+ return cpu_idx; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
270 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
271 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
272 |
+ for ( current=head; current; current=current->next ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
273 |
+ if ( !current->next || current->next->idx > idx ) { |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
274 |
+ cpu_idx->next = current->next; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
275 |
+ current->next = cpu_idx; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
276 |
+ return head; |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
277 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
278 |
+ } |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
279 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
280 |
+} |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
281 |
+ |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
282 |
int |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
283 |
_cpu_status( char *state) |
1cda4e19a209
16824703 net-snmp can't get "hrProcessorLoad" dynamically after change the No. of CPUs.
Mohana Rao Gorai <mohana.gorai@oracle.com>
parents:
diff
changeset
|
284 |
{ |