Re: [PATCH 1/7] tracing: Introduce trace_create_cpu_file() andtracing_get_cpu()

From: Oleg Nesterov
Date: Mon Jul 22 2013 - 13:19:50 EST


On 07/22, Steven Rostedt wrote:
>
> Now here's why I'm emailing you. What Oleg is doing here is instead of
> creating this extra trace_cpu structure, he's using the inode->i_cdev to
> store the CPU information (he's wrapped this with helper functions so we
> can use any inode structure). He sets inode->i_cdev to CPU+1 or to
> RING_BUFFER_ALL_CPUS (when all CPU info is needed).

This doesn't really matter, but RING_BUFFER_ALL_CPUS is encoded as NULL
so we do not need to change init_tracer_debugfs(). inode_init_always()
clears ->i_cdev.

Al, I will appreciate it if can ack/nack this hack.

I chose i_cdev because it shares the same union with i_pipe/bdev, this
(I hope) obviously means that vfs can never use this pointer unless it
checks S_ISCHR().

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/