]> git.wh0rd.org - ICEs.git/blob - bfin-4845/trace.i.4
more
[ICEs.git] / bfin-4845 / trace.i.4
1 typedef long long loff_t;
2 int __test_bit(int nr, const void *addr)
3 {
4 int *a = (int *)addr;
5 int mask;
6 a += nr >> 5;
7 mask = 1 << (nr & 0x1f);
8 return ((mask & *a) != 0);
9 }
10 int test_bit(int nr, const void *addr)
11 {
12 return __test_bit(nr, addr);
13 };
14 typedef struct {
15 } atomic_t;
16 typedef struct cpumask {
17 unsigned long
18 bits[(((1) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
19 } cpumask_t;
20 struct trace_array_cpu {
21 int disabled;
22 };
23 struct trace_array {
24 struct trace_array_cpu *data[1];
25 };
26 cpumask_t tracing_buffer_mask;
27 struct trace_array global_trace;
28 cpumask_t tracing_cpumask;
29 cpumask_t tracing_cpumask_new;
30 tracing_cpumask_write()
31 {
32 int err;
33 int cpu;
34 struct file *filp;
35 const char *ubuf;
36 unsigned long count;
37 long long * ppos;
38 for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)tracing_buffer_mask) {
39 if (test_bit((cpu), (tracing_cpumask).bits)
40 && !test_bit((cpu), (tracing_cpumask_new).bits)) {
41 atomic_inc(&global_trace.data[cpu]->disabled);
42 }
43 if (!test_bit((cpu), (tracing_cpumask).bits)
44 && test_bit((cpu), (tracing_cpumask_new).bits)) {
45 atomic_dec(&global_trace.data[cpu]->disabled);
46 }
47 }
48 }