Messages in this thread | | | Date | Tue, 20 Dec 2011 18:26:12 +0900 | From | Hiraku TOYOOKA <> | Subject | trace: multiple ring buffers |
| |
Hello, Steven, I'm researching RAS features for real-time systems.
I'm interested in the multiple ring buffer support on ftrace because of following reasons.
* To preserve particular events such as error or fault over a long time. These events are useful for failure analysis. But these events could be lost when other trace events are generated in large quantities in one buffer. If there is only one buffer, we have to prepare one big buffer so that the particular events are not overwritten by other events. It wastes memory as a result.
* To use the same trace events for different purposes. For example, I'd like to collect trace events and detect performance degradation (using sched_switch event, etc.), while running flight recorder for failure analysis.
Multiple buffer support makes these really easy. I'm sure that other users wish to use it. Of course, it will introduce some complexities to ftrace code.
So, I'd like to implement following the features on ftrace.
* A mechanism to increase buffers on demand * A mechanism to change destination buffer(s) of each trace event via debugfs
I have heard from Masami that you have some ideas of multiple buffers. If so, could you tell me the ideas? I'd like to cooperate with you to develop multiple buffers.
Best regards, Hiraku Toyooka
| |