typedef unsigned long __kernel_size_t; typedef long __kernel_ssize_t; typedef long long __kernel_loff_t; typedef __kernel_loff_t loff_t; typedef __kernel_size_t size_t; typedef __kernel_ssize_t ssize_t; static inline __attribute__ ((always_inline)) 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); } static inline __attribute__ ((always_inline)) int test_bit(int nr, const void *addr) { return __test_bit(nr, addr); }; typedef struct { } atomic_t; struct mutex { atomic_t count; void *magic; }; typedef struct cpumask { unsigned long bits[(((1) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))]; } cpumask_t; struct seq_file { }; typedef int (*initcall_t) (void); struct file_operations { ssize_t(*read) (struct file *, char *, size_t, loff_t *); ssize_t(*write) (struct file *, const char *, size_t, loff_t *); int (*open) (struct inode *, struct file *); } sigval_t; struct trace_array_cpu { atomic_t disabled; }; struct trace_array { struct trace_array_cpu *data[1]; }; static cpumask_t tracing_buffer_mask; static struct trace_array global_trace; int tracing_open_generic(struct inode *inode, struct file *filp) { } static cpumask_t tracing_cpumask = (cpumask_t) { }; static cpumask_t tracing_cpumask_new; static struct mutex tracing_cpumask_update_lock = { .count = { (1)} ,.magic = &tracing_cpumask_update_lock }; static ssize_t tracing_cpumask_read(struct file *filp, char *ubuf, size_t count, loff_t * ppos) { } static ssize_t tracing_cpumask_write(struct file *filp, const char *ubuf, size_t count, loff_t * ppos) { int err, 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); } } } static struct file_operations tracing_cpumask_fops = { .open = tracing_open_generic,.read = tracing_cpumask_read,.write = tracing_cpumask_write, }; static ssize_t tracing_mark_write(struct file *filp, const char *ubuf, size_t cnt, loff_t * fpos) { } static struct file_operations tracing_max_lat_fops = { .open = tracing_open_generic,.write = tracing_mark_write, }; static __attribute__ ((__section__(".init.text"))) __attribute__ ((__cold__)) __attribute__ ((no_instrument_function)) int tracer_init_debugfs(void) { struct dentry *d_tracer; struct dentry *entry; entry = debugfs_create_file("tracing_cpumask", 0644, d_tracer, ((void *)0), &tracing_cpumask_fops); } static initcall_t __initcall_tracer_init_debugfs5 __attribute__ ((__used__)) __attribute__ ((__section__(".initcall" "5" ".init"))) = tracer_init_debugfs;