diff options
-rw-r--r-- | arch/s390/appldata/appldata.h | 10 | ||||
-rw-r--r-- | arch/s390/appldata/appldata_base.c | 39 | ||||
-rw-r--r-- | arch/s390/appldata/appldata_mem.c | 43 | ||||
-rw-r--r-- | arch/s390/appldata/appldata_net_sum.c | 39 | ||||
-rw-r--r-- | arch/s390/appldata/appldata_os.c | 57 |
5 files changed, 11 insertions, 177 deletions
diff --git a/arch/s390/appldata/appldata.h b/arch/s390/appldata/appldata.h index db3ae8505103..17a2636fec0a 100644 --- a/arch/s390/appldata/appldata.h +++ b/arch/s390/appldata/appldata.h | |||
@@ -3,13 +3,11 @@ | |||
3 | * | 3 | * |
4 | * Definitions and interface for Linux - z/VM Monitor Stream. | 4 | * Definitions and interface for Linux - z/VM Monitor Stream. |
5 | * | 5 | * |
6 | * Copyright (C) 2003,2006 IBM Corporation, IBM Deutschland Entwicklung GmbH. | 6 | * Copyright IBM Corp. 2003, 2008 |
7 | * | 7 | * |
8 | * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com> | 8 | * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com> |
9 | */ | 9 | */ |
10 | 10 | ||
11 | //#define APPLDATA_DEBUG /* Debug messages on/off */ | ||
12 | |||
13 | #define APPLDATA_MAX_REC_SIZE 4024 /* Maximum size of the */ | 11 | #define APPLDATA_MAX_REC_SIZE 4024 /* Maximum size of the */ |
14 | /* data buffer */ | 12 | /* data buffer */ |
15 | #define APPLDATA_MAX_PROCS 100 | 13 | #define APPLDATA_MAX_PROCS 100 |
@@ -32,12 +30,6 @@ | |||
32 | #define P_ERROR(x...) printk(KERN_ERR MY_PRINT_NAME " error: " x) | 30 | #define P_ERROR(x...) printk(KERN_ERR MY_PRINT_NAME " error: " x) |
33 | #define P_WARNING(x...) printk(KERN_WARNING MY_PRINT_NAME " status: " x) | 31 | #define P_WARNING(x...) printk(KERN_WARNING MY_PRINT_NAME " status: " x) |
34 | 32 | ||
35 | #ifdef APPLDATA_DEBUG | ||
36 | #define P_DEBUG(x...) printk(KERN_DEBUG MY_PRINT_NAME " debug: " x) | ||
37 | #else | ||
38 | #define P_DEBUG(x...) do {} while (0) | ||
39 | #endif | ||
40 | |||
41 | struct appldata_ops { | 33 | struct appldata_ops { |
42 | struct list_head list; | 34 | struct list_head list; |
43 | struct ctl_table_header *sysctl_header; | 35 | struct ctl_table_header *sysctl_header; |
diff --git a/arch/s390/appldata/appldata_base.c b/arch/s390/appldata/appldata_base.c index 803f3645edf6..9cb3d92447a3 100644 --- a/arch/s390/appldata/appldata_base.c +++ b/arch/s390/appldata/appldata_base.c | |||
@@ -5,7 +5,7 @@ | |||
5 | * Exports appldata_register_ops() and appldata_unregister_ops() for the | 5 | * Exports appldata_register_ops() and appldata_unregister_ops() for the |
6 | * data gathering modules. | 6 | * data gathering modules. |
7 | * | 7 | * |
8 | * Copyright (C) 2003,2006 IBM Corporation, IBM Deutschland Entwicklung GmbH. | 8 | * Copyright IBM Corp. 2003, 2008 |
9 | * | 9 | * |
10 | * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com> | 10 | * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com> |
11 | */ | 11 | */ |
@@ -108,9 +108,6 @@ static LIST_HEAD(appldata_ops_list); | |||
108 | */ | 108 | */ |
109 | static void appldata_timer_function(unsigned long data) | 109 | static void appldata_timer_function(unsigned long data) |
110 | { | 110 | { |
111 | P_DEBUG(" -= Timer =-\n"); | ||
112 | P_DEBUG("CPU: %i, expire_count: %i\n", smp_processor_id(), | ||
113 | atomic_read(&appldata_expire_count)); | ||
114 | if (atomic_dec_and_test(&appldata_expire_count)) { | 111 | if (atomic_dec_and_test(&appldata_expire_count)) { |
115 | atomic_set(&appldata_expire_count, num_online_cpus()); | 112 | atomic_set(&appldata_expire_count, num_online_cpus()); |
116 | queue_work(appldata_wq, (struct work_struct *) data); | 113 | queue_work(appldata_wq, (struct work_struct *) data); |
@@ -128,14 +125,11 @@ static void appldata_work_fn(struct work_struct *work) | |||
128 | struct appldata_ops *ops; | 125 | struct appldata_ops *ops; |
129 | int i; | 126 | int i; |
130 | 127 | ||
131 | P_DEBUG(" -= Work Queue =-\n"); | ||
132 | i = 0; | 128 | i = 0; |
133 | get_online_cpus(); | 129 | get_online_cpus(); |
134 | spin_lock(&appldata_ops_lock); | 130 | spin_lock(&appldata_ops_lock); |
135 | list_for_each(lh, &appldata_ops_list) { | 131 | list_for_each(lh, &appldata_ops_list) { |
136 | ops = list_entry(lh, struct appldata_ops, list); | 132 | ops = list_entry(lh, struct appldata_ops, list); |
137 | P_DEBUG("list_for_each loop: %i) active = %u, name = %s\n", | ||
138 | ++i, ops->active, ops->name); | ||
139 | if (ops->active == 1) { | 133 | if (ops->active == 1) { |
140 | ops->callback(ops->data); | 134 | ops->callback(ops->data); |
141 | } | 135 | } |
@@ -212,7 +206,6 @@ __appldata_vtimer_setup(int cmd) | |||
212 | 0, 1); | 206 | 0, 1); |
213 | } | 207 | } |
214 | appldata_timer_active = 1; | 208 | appldata_timer_active = 1; |
215 | P_INFO("Monitoring timer started.\n"); | ||
216 | break; | 209 | break; |
217 | case APPLDATA_DEL_TIMER: | 210 | case APPLDATA_DEL_TIMER: |
218 | for_each_online_cpu(i) | 211 | for_each_online_cpu(i) |
@@ -221,7 +214,6 @@ __appldata_vtimer_setup(int cmd) | |||
221 | break; | 214 | break; |
222 | appldata_timer_active = 0; | 215 | appldata_timer_active = 0; |
223 | atomic_set(&appldata_expire_count, num_online_cpus()); | 216 | atomic_set(&appldata_expire_count, num_online_cpus()); |
224 | P_INFO("Monitoring timer stopped.\n"); | ||
225 | break; | 217 | break; |
226 | case APPLDATA_MOD_TIMER: | 218 | case APPLDATA_MOD_TIMER: |
227 | per_cpu_interval = (u64) (appldata_interval*1000 / | 219 | per_cpu_interval = (u64) (appldata_interval*1000 / |
@@ -313,10 +305,8 @@ appldata_interval_handler(ctl_table *ctl, int write, struct file *filp, | |||
313 | } | 305 | } |
314 | interval = 0; | 306 | interval = 0; |
315 | sscanf(buf, "%i", &interval); | 307 | sscanf(buf, "%i", &interval); |
316 | if (interval <= 0) { | 308 | if (interval <= 0) |
317 | P_ERROR("Timer CPU interval has to be > 0!\n"); | ||
318 | return -EINVAL; | 309 | return -EINVAL; |
319 | } | ||
320 | 310 | ||
321 | get_online_cpus(); | 311 | get_online_cpus(); |
322 | spin_lock(&appldata_timer_lock); | 312 | spin_lock(&appldata_timer_lock); |
@@ -324,9 +314,6 @@ appldata_interval_handler(ctl_table *ctl, int write, struct file *filp, | |||
324 | __appldata_vtimer_setup(APPLDATA_MOD_TIMER); | 314 | __appldata_vtimer_setup(APPLDATA_MOD_TIMER); |
325 | spin_unlock(&appldata_timer_lock); | 315 | spin_unlock(&appldata_timer_lock); |
326 | put_online_cpus(); | 316 | put_online_cpus(); |
327 | |||
328 | P_INFO("Monitoring CPU interval set to %u milliseconds.\n", | ||
329 | interval); | ||
330 | out: | 317 | out: |
331 | *lenp = len; | 318 | *lenp = len; |
332 | *ppos += len; | 319 | *ppos += len; |
@@ -406,23 +393,16 @@ appldata_generic_handler(ctl_table *ctl, int write, struct file *filp, | |||
406 | P_ERROR("START DIAG 0xDC for %s failed, " | 393 | P_ERROR("START DIAG 0xDC for %s failed, " |
407 | "return code: %d\n", ops->name, rc); | 394 | "return code: %d\n", ops->name, rc); |
408 | module_put(ops->owner); | 395 | module_put(ops->owner); |
409 | } else { | 396 | } else |
410 | P_INFO("Monitoring %s data enabled, " | ||
411 | "DIAG 0xDC started.\n", ops->name); | ||
412 | ops->active = 1; | 397 | ops->active = 1; |
413 | } | ||
414 | } else if ((buf[0] == '0') && (ops->active == 1)) { | 398 | } else if ((buf[0] == '0') && (ops->active == 1)) { |
415 | ops->active = 0; | 399 | ops->active = 0; |
416 | rc = appldata_diag(ops->record_nr, APPLDATA_STOP_REC, | 400 | rc = appldata_diag(ops->record_nr, APPLDATA_STOP_REC, |
417 | (unsigned long) ops->data, ops->size, | 401 | (unsigned long) ops->data, ops->size, |
418 | ops->mod_lvl); | 402 | ops->mod_lvl); |
419 | if (rc != 0) { | 403 | if (rc != 0) |
420 | P_ERROR("STOP DIAG 0xDC for %s failed, " | 404 | P_ERROR("STOP DIAG 0xDC for %s failed, " |
421 | "return code: %d\n", ops->name, rc); | 405 | "return code: %d\n", ops->name, rc); |
422 | } else { | ||
423 | P_INFO("Monitoring %s data disabled, " | ||
424 | "DIAG 0xDC stopped.\n", ops->name); | ||
425 | } | ||
426 | module_put(ops->owner); | 406 | module_put(ops->owner); |
427 | } | 407 | } |
428 | spin_unlock(&appldata_ops_lock); | 408 | spin_unlock(&appldata_ops_lock); |
@@ -468,7 +448,6 @@ int appldata_register_ops(struct appldata_ops *ops) | |||
468 | ops->sysctl_header = register_sysctl_table(ops->ctl_table); | 448 | ops->sysctl_header = register_sysctl_table(ops->ctl_table); |
469 | if (!ops->sysctl_header) | 449 | if (!ops->sysctl_header) |
470 | goto out; | 450 | goto out; |
471 | P_INFO("%s-ops registered!\n", ops->name); | ||
472 | return 0; | 451 | return 0; |
473 | out: | 452 | out: |
474 | spin_lock(&appldata_ops_lock); | 453 | spin_lock(&appldata_ops_lock); |
@@ -490,7 +469,6 @@ void appldata_unregister_ops(struct appldata_ops *ops) | |||
490 | spin_unlock(&appldata_ops_lock); | 469 | spin_unlock(&appldata_ops_lock); |
491 | unregister_sysctl_table(ops->sysctl_header); | 470 | unregister_sysctl_table(ops->sysctl_header); |
492 | kfree(ops->ctl_table); | 471 | kfree(ops->ctl_table); |
493 | P_INFO("%s-ops unregistered!\n", ops->name); | ||
494 | } | 472 | } |
495 | /********************** module-ops management <END> **************************/ | 473 | /********************** module-ops management <END> **************************/ |
496 | 474 | ||
@@ -553,14 +531,9 @@ static int __init appldata_init(void) | |||
553 | { | 531 | { |
554 | int i; | 532 | int i; |
555 | 533 | ||
556 | P_DEBUG("sizeof(parameter_list) = %lu\n", | ||
557 | sizeof(struct appldata_parameter_list)); | ||
558 | |||
559 | appldata_wq = create_singlethread_workqueue("appldata"); | 534 | appldata_wq = create_singlethread_workqueue("appldata"); |
560 | if (!appldata_wq) { | 535 | if (!appldata_wq) |
561 | P_ERROR("Could not create work queue\n"); | ||
562 | return -ENOMEM; | 536 | return -ENOMEM; |
563 | } | ||
564 | 537 | ||
565 | get_online_cpus(); | 538 | get_online_cpus(); |
566 | for_each_online_cpu(i) | 539 | for_each_online_cpu(i) |
@@ -571,8 +544,6 @@ static int __init appldata_init(void) | |||
571 | register_hotcpu_notifier(&appldata_nb); | 544 | register_hotcpu_notifier(&appldata_nb); |
572 | 545 | ||
573 | appldata_sysctl_header = register_sysctl_table(appldata_dir_table); | 546 | appldata_sysctl_header = register_sysctl_table(appldata_dir_table); |
574 | |||
575 | P_DEBUG("Base interface initialized.\n"); | ||
576 | return 0; | 547 | return 0; |
577 | } | 548 | } |
578 | 549 | ||
diff --git a/arch/s390/appldata/appldata_mem.c b/arch/s390/appldata/appldata_mem.c index 51181ccdb87b..3ed56b7d1b2f 100644 --- a/arch/s390/appldata/appldata_mem.c +++ b/arch/s390/appldata/appldata_mem.c | |||
@@ -14,14 +14,13 @@ | |||
14 | #include <linux/slab.h> | 14 | #include <linux/slab.h> |
15 | #include <linux/errno.h> | 15 | #include <linux/errno.h> |
16 | #include <linux/kernel_stat.h> | 16 | #include <linux/kernel_stat.h> |
17 | #include <asm/io.h> | ||
18 | #include <linux/pagemap.h> | 17 | #include <linux/pagemap.h> |
19 | #include <linux/swap.h> | 18 | #include <linux/swap.h> |
19 | #include <asm/io.h> | ||
20 | 20 | ||
21 | #include "appldata.h" | 21 | #include "appldata.h" |
22 | 22 | ||
23 | 23 | ||
24 | #define MY_PRINT_NAME "appldata_mem" /* for debug messages, etc. */ | ||
25 | #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* Converts #Pages to KB */ | 24 | #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* Converts #Pages to KB */ |
26 | 25 | ||
27 | /* | 26 | /* |
@@ -70,30 +69,6 @@ static struct appldata_mem_data { | |||
70 | } __attribute__((packed)) appldata_mem_data; | 69 | } __attribute__((packed)) appldata_mem_data; |
71 | 70 | ||
72 | 71 | ||
73 | static inline void appldata_debug_print(struct appldata_mem_data *mem_data) | ||
74 | { | ||
75 | P_DEBUG("--- MEM - RECORD ---\n"); | ||
76 | P_DEBUG("pgpgin = %8lu KB\n", mem_data->pgpgin); | ||
77 | P_DEBUG("pgpgout = %8lu KB\n", mem_data->pgpgout); | ||
78 | P_DEBUG("pswpin = %8lu Pages\n", mem_data->pswpin); | ||
79 | P_DEBUG("pswpout = %8lu Pages\n", mem_data->pswpout); | ||
80 | P_DEBUG("pgalloc = %8lu \n", mem_data->pgalloc); | ||
81 | P_DEBUG("pgfault = %8lu \n", mem_data->pgfault); | ||
82 | P_DEBUG("pgmajfault = %8lu \n", mem_data->pgmajfault); | ||
83 | P_DEBUG("sharedram = %8lu KB\n", mem_data->sharedram); | ||
84 | P_DEBUG("totalram = %8lu KB\n", mem_data->totalram); | ||
85 | P_DEBUG("freeram = %8lu KB\n", mem_data->freeram); | ||
86 | P_DEBUG("totalhigh = %8lu KB\n", mem_data->totalhigh); | ||
87 | P_DEBUG("freehigh = %8lu KB\n", mem_data->freehigh); | ||
88 | P_DEBUG("bufferram = %8lu KB\n", mem_data->bufferram); | ||
89 | P_DEBUG("cached = %8lu KB\n", mem_data->cached); | ||
90 | P_DEBUG("totalswap = %8lu KB\n", mem_data->totalswap); | ||
91 | P_DEBUG("freeswap = %8lu KB\n", mem_data->freeswap); | ||
92 | P_DEBUG("sync_count_1 = %u\n", mem_data->sync_count_1); | ||
93 | P_DEBUG("sync_count_2 = %u\n", mem_data->sync_count_2); | ||
94 | P_DEBUG("timestamp = %lX\n", mem_data->timestamp); | ||
95 | } | ||
96 | |||
97 | /* | 72 | /* |
98 | * appldata_get_mem_data() | 73 | * appldata_get_mem_data() |
99 | * | 74 | * |
@@ -140,9 +115,6 @@ static void appldata_get_mem_data(void *data) | |||
140 | 115 | ||
141 | mem_data->timestamp = get_clock(); | 116 | mem_data->timestamp = get_clock(); |
142 | mem_data->sync_count_2++; | 117 | mem_data->sync_count_2++; |
143 | #ifdef APPLDATA_DEBUG | ||
144 | appldata_debug_print(mem_data); | ||
145 | #endif | ||
146 | } | 118 | } |
147 | 119 | ||
148 | 120 | ||
@@ -164,17 +136,7 @@ static struct appldata_ops ops = { | |||
164 | */ | 136 | */ |
165 | static int __init appldata_mem_init(void) | 137 | static int __init appldata_mem_init(void) |
166 | { | 138 | { |
167 | int rc; | 139 | return appldata_register_ops(&ops); |
168 | |||
169 | P_DEBUG("sizeof(mem) = %lu\n", sizeof(struct appldata_mem_data)); | ||
170 | |||
171 | rc = appldata_register_ops(&ops); | ||
172 | if (rc != 0) { | ||
173 | P_ERROR("Error registering ops, rc = %i\n", rc); | ||
174 | } else { | ||
175 | P_DEBUG("%s-ops registered!\n", ops.name); | ||
176 | } | ||
177 | return rc; | ||
178 | } | 140 | } |
179 | 141 | ||
180 | /* | 142 | /* |
@@ -185,7 +147,6 @@ static int __init appldata_mem_init(void) | |||
185 | static void __exit appldata_mem_exit(void) | 147 | static void __exit appldata_mem_exit(void) |
186 | { | 148 | { |
187 | appldata_unregister_ops(&ops); | 149 | appldata_unregister_ops(&ops); |
188 | P_DEBUG("%s-ops unregistered!\n", ops.name); | ||
189 | } | 150 | } |
190 | 151 | ||
191 | 152 | ||
diff --git a/arch/s390/appldata/appldata_net_sum.c b/arch/s390/appldata/appldata_net_sum.c index 4d8344336001..3b746556e1a3 100644 --- a/arch/s390/appldata/appldata_net_sum.c +++ b/arch/s390/appldata/appldata_net_sum.c | |||
@@ -21,9 +21,6 @@ | |||
21 | #include "appldata.h" | 21 | #include "appldata.h" |
22 | 22 | ||
23 | 23 | ||
24 | #define MY_PRINT_NAME "appldata_net_sum" /* for debug messages, etc. */ | ||
25 | |||
26 | |||
27 | /* | 24 | /* |
28 | * Network data | 25 | * Network data |
29 | * | 26 | * |
@@ -60,26 +57,6 @@ static struct appldata_net_sum_data { | |||
60 | } __attribute__((packed)) appldata_net_sum_data; | 57 | } __attribute__((packed)) appldata_net_sum_data; |
61 | 58 | ||
62 | 59 | ||
63 | static inline void appldata_print_debug(struct appldata_net_sum_data *net_data) | ||
64 | { | ||
65 | P_DEBUG("--- NET - RECORD ---\n"); | ||
66 | |||
67 | P_DEBUG("nr_interfaces = %u\n", net_data->nr_interfaces); | ||
68 | P_DEBUG("rx_packets = %8lu\n", net_data->rx_packets); | ||
69 | P_DEBUG("tx_packets = %8lu\n", net_data->tx_packets); | ||
70 | P_DEBUG("rx_bytes = %8lu\n", net_data->rx_bytes); | ||
71 | P_DEBUG("tx_bytes = %8lu\n", net_data->tx_bytes); | ||
72 | P_DEBUG("rx_errors = %8lu\n", net_data->rx_errors); | ||
73 | P_DEBUG("tx_errors = %8lu\n", net_data->tx_errors); | ||
74 | P_DEBUG("rx_dropped = %8lu\n", net_data->rx_dropped); | ||
75 | P_DEBUG("tx_dropped = %8lu\n", net_data->tx_dropped); | ||
76 | P_DEBUG("collisions = %8lu\n", net_data->collisions); | ||
77 | |||
78 | P_DEBUG("sync_count_1 = %u\n", net_data->sync_count_1); | ||
79 | P_DEBUG("sync_count_2 = %u\n", net_data->sync_count_2); | ||
80 | P_DEBUG("timestamp = %lX\n", net_data->timestamp); | ||
81 | } | ||
82 | |||
83 | /* | 60 | /* |
84 | * appldata_get_net_sum_data() | 61 | * appldata_get_net_sum_data() |
85 | * | 62 | * |
@@ -135,9 +112,6 @@ static void appldata_get_net_sum_data(void *data) | |||
135 | 112 | ||
136 | net_data->timestamp = get_clock(); | 113 | net_data->timestamp = get_clock(); |
137 | net_data->sync_count_2++; | 114 | net_data->sync_count_2++; |
138 | #ifdef APPLDATA_DEBUG | ||
139 | appldata_print_debug(net_data); | ||
140 | #endif | ||
141 | } | 115 | } |
142 | 116 | ||
143 | 117 | ||
@@ -159,17 +133,7 @@ static struct appldata_ops ops = { | |||
159 | */ | 133 | */ |
160 | static int __init appldata_net_init(void) | 134 | static int __init appldata_net_init(void) |
161 | { | 135 | { |
162 | int rc; | 136 | return appldata_register_ops(&ops); |
163 | |||
164 | P_DEBUG("sizeof(net) = %lu\n", sizeof(struct appldata_net_sum_data)); | ||
165 | |||
166 | rc = appldata_register_ops(&ops); | ||
167 | if (rc != 0) { | ||
168 | P_ERROR("Error registering ops, rc = %i\n", rc); | ||
169 | } else { | ||
170 | P_DEBUG("%s-ops registered!\n", ops.name); | ||
171 | } | ||
172 | return rc; | ||
173 | } | 137 | } |
174 | 138 | ||
175 | /* | 139 | /* |
@@ -180,7 +144,6 @@ static int __init appldata_net_init(void) | |||
180 | static void __exit appldata_net_exit(void) | 144 | static void __exit appldata_net_exit(void) |
181 | { | 145 | { |
182 | appldata_unregister_ops(&ops); | 146 | appldata_unregister_ops(&ops); |
183 | P_DEBUG("%s-ops unregistered!\n", ops.name); | ||
184 | } | 147 | } |
185 | 148 | ||
186 | 149 | ||
diff --git a/arch/s390/appldata/appldata_os.c b/arch/s390/appldata/appldata_os.c index 6b3eafe10453..eb44f9f8ab91 100644 --- a/arch/s390/appldata/appldata_os.c +++ b/arch/s390/appldata/appldata_os.c | |||
@@ -89,44 +89,6 @@ static struct appldata_ops ops = { | |||
89 | }; | 89 | }; |
90 | 90 | ||
91 | 91 | ||
92 | static inline void appldata_print_debug(struct appldata_os_data *os_data) | ||
93 | { | ||
94 | int a0, a1, a2, i; | ||
95 | |||
96 | P_DEBUG("--- OS - RECORD ---\n"); | ||
97 | P_DEBUG("nr_threads = %u\n", os_data->nr_threads); | ||
98 | P_DEBUG("nr_running = %u\n", os_data->nr_running); | ||
99 | P_DEBUG("nr_iowait = %u\n", os_data->nr_iowait); | ||
100 | P_DEBUG("avenrun(int) = %8x / %8x / %8x\n", os_data->avenrun[0], | ||
101 | os_data->avenrun[1], os_data->avenrun[2]); | ||
102 | a0 = os_data->avenrun[0]; | ||
103 | a1 = os_data->avenrun[1]; | ||
104 | a2 = os_data->avenrun[2]; | ||
105 | P_DEBUG("avenrun(float) = %d.%02d / %d.%02d / %d.%02d\n", | ||
106 | LOAD_INT(a0), LOAD_FRAC(a0), LOAD_INT(a1), LOAD_FRAC(a1), | ||
107 | LOAD_INT(a2), LOAD_FRAC(a2)); | ||
108 | |||
109 | P_DEBUG("nr_cpus = %u\n", os_data->nr_cpus); | ||
110 | for (i = 0; i < os_data->nr_cpus; i++) { | ||
111 | P_DEBUG("cpu%u : user = %u, nice = %u, system = %u, " | ||
112 | "idle = %u, irq = %u, softirq = %u, iowait = %u, " | ||
113 | "steal = %u\n", | ||
114 | os_data->os_cpu[i].cpu_id, | ||
115 | os_data->os_cpu[i].per_cpu_user, | ||
116 | os_data->os_cpu[i].per_cpu_nice, | ||
117 | os_data->os_cpu[i].per_cpu_system, | ||
118 | os_data->os_cpu[i].per_cpu_idle, | ||
119 | os_data->os_cpu[i].per_cpu_irq, | ||
120 | os_data->os_cpu[i].per_cpu_softirq, | ||
121 | os_data->os_cpu[i].per_cpu_iowait, | ||
122 | os_data->os_cpu[i].per_cpu_steal); | ||
123 | } | ||
124 | |||
125 | P_DEBUG("sync_count_1 = %u\n", os_data->sync_count_1); | ||
126 | P_DEBUG("sync_count_2 = %u\n", os_data->sync_count_2); | ||
127 | P_DEBUG("timestamp = %lX\n", os_data->timestamp); | ||
128 | } | ||
129 | |||
130 | /* | 92 | /* |
131 | * appldata_get_os_data() | 93 | * appldata_get_os_data() |
132 | * | 94 | * |
@@ -180,13 +142,10 @@ static void appldata_get_os_data(void *data) | |||
180 | APPLDATA_START_INTERVAL_REC, | 142 | APPLDATA_START_INTERVAL_REC, |
181 | (unsigned long) ops.data, new_size, | 143 | (unsigned long) ops.data, new_size, |
182 | ops.mod_lvl); | 144 | ops.mod_lvl); |
183 | if (rc != 0) { | 145 | if (rc != 0) |
184 | P_ERROR("os: START NEW DIAG 0xDC failed, " | 146 | P_ERROR("os: START NEW DIAG 0xDC failed, " |
185 | "return code: %d, new size = %i\n", rc, | 147 | "return code: %d, new size = %i\n", rc, |
186 | new_size); | 148 | new_size); |
187 | P_INFO("os: stopping old record now\n"); | ||
188 | } else | ||
189 | P_INFO("os: new record size = %i\n", new_size); | ||
190 | 149 | ||
191 | rc = appldata_diag(APPLDATA_RECORD_OS_ID, | 150 | rc = appldata_diag(APPLDATA_RECORD_OS_ID, |
192 | APPLDATA_STOP_REC, | 151 | APPLDATA_STOP_REC, |
@@ -204,9 +163,6 @@ static void appldata_get_os_data(void *data) | |||
204 | } | 163 | } |
205 | os_data->timestamp = get_clock(); | 164 | os_data->timestamp = get_clock(); |
206 | os_data->sync_count_2++; | 165 | os_data->sync_count_2++; |
207 | #ifdef APPLDATA_DEBUG | ||
208 | appldata_print_debug(os_data); | ||
209 | #endif | ||
210 | } | 166 | } |
211 | 167 | ||
212 | 168 | ||
@@ -227,12 +183,9 @@ static int __init appldata_os_init(void) | |||
227 | rc = -ENOMEM; | 183 | rc = -ENOMEM; |
228 | goto out; | 184 | goto out; |
229 | } | 185 | } |
230 | P_DEBUG("max. sizeof(os) = %i, sizeof(os_cpu) = %lu\n", max_size, | ||
231 | sizeof(struct appldata_os_per_cpu)); | ||
232 | 186 | ||
233 | appldata_os_data = kzalloc(max_size, GFP_DMA); | 187 | appldata_os_data = kzalloc(max_size, GFP_DMA); |
234 | if (appldata_os_data == NULL) { | 188 | if (appldata_os_data == NULL) { |
235 | P_ERROR("No memory for %s!\n", ops.name); | ||
236 | rc = -ENOMEM; | 189 | rc = -ENOMEM; |
237 | goto out; | 190 | goto out; |
238 | } | 191 | } |
@@ -240,17 +193,12 @@ static int __init appldata_os_init(void) | |||
240 | appldata_os_data->per_cpu_size = sizeof(struct appldata_os_per_cpu); | 193 | appldata_os_data->per_cpu_size = sizeof(struct appldata_os_per_cpu); |
241 | appldata_os_data->cpu_offset = offsetof(struct appldata_os_data, | 194 | appldata_os_data->cpu_offset = offsetof(struct appldata_os_data, |
242 | os_cpu); | 195 | os_cpu); |
243 | P_DEBUG("cpu offset = %u\n", appldata_os_data->cpu_offset); | ||
244 | 196 | ||
245 | ops.data = appldata_os_data; | 197 | ops.data = appldata_os_data; |
246 | ops.callback = &appldata_get_os_data; | 198 | ops.callback = &appldata_get_os_data; |
247 | rc = appldata_register_ops(&ops); | 199 | rc = appldata_register_ops(&ops); |
248 | if (rc != 0) { | 200 | if (rc != 0) |
249 | P_ERROR("Error registering ops, rc = %i\n", rc); | ||
250 | kfree(appldata_os_data); | 201 | kfree(appldata_os_data); |
251 | } else { | ||
252 | P_DEBUG("%s-ops registered!\n", ops.name); | ||
253 | } | ||
254 | out: | 202 | out: |
255 | return rc; | 203 | return rc; |
256 | } | 204 | } |
@@ -264,7 +212,6 @@ static void __exit appldata_os_exit(void) | |||
264 | { | 212 | { |
265 | appldata_unregister_ops(&ops); | 213 | appldata_unregister_ops(&ops); |
266 | kfree(appldata_os_data); | 214 | kfree(appldata_os_data); |
267 | P_DEBUG("%s-ops unregistered!\n", ops.name); | ||
268 | } | 215 | } |
269 | 216 | ||
270 | 217 | ||