+typedef unsigned long size_t;
+typedef long ssize_t;
+typedef long long loff_t;
+int __test_bit(int nr, const void *addr)
+{
+ int *a = (int *)addr;
+ int mask;
+ a += nr >> 5;
+ mask = 1 << (nr & 0x1f);
+ return ((mask & *a) != 0);
+}
+int test_bit(int nr, const void *addr)
+{
+ return __test_bit(nr, addr);
+};
+typedef struct {
+} atomic_t;
+typedef struct cpumask {
+ unsigned long
+ bits[(((1) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
+} cpumask_t;
+struct trace_array_cpu {
+ atomic_t disabled;
+};
+struct trace_array {
+ struct trace_array_cpu *data[1];
+};
+cpumask_t tracing_buffer_mask;
+struct trace_array global_trace;
+cpumask_t tracing_cpumask;
+cpumask_t tracing_cpumask_new;
+tracing_cpumask_write(struct file *filp, const char *ubuf, size_t count,
+ loff_t * ppos)
+{
+ int err;
+ int cpu;
+ for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)tracing_buffer_mask) {
+ if (test_bit((cpu), (tracing_cpumask).bits)
+ && !test_bit((cpu), (tracing_cpumask_new).bits)) {
+ atomic_inc(&global_trace.data[cpu]->disabled);
+ }
+ if (!test_bit((cpu), (tracing_cpumask).bits)
+ && test_bit((cpu), (tracing_cpumask_new).bits)) {
+ atomic_dec(&global_trace.data[cpu]->disabled);
+ }
+ }
+}