Re: [PATCH 08/15] kernel-shark: Integrate the stream definitions with the C API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Steven,

On 7.10.20 г. 23:12 ч., Steven Rostedt wrote:

I didn't apply the first patch, and nothing broke up until this patch.

On Tue, 29 Sep 2020 16:41:16 +0300
"Yordan Karadzhov (VMware)" <y.karadz@xxxxxxxxx> wrote:

Unfortunately this integration can only happen in a single change,
which results into one huge patch, that may be hard to review. In
this patch we modify the API itself plus the two most basic examples
demonstrating how to use it. The most noticeable change that this
new version of the API brings is that the processing of the
trace-cmd/Ftrace data is wrapped inside the dedicated implementation
of the Data stream interface and no trace-cmd definitions are leaking
outside of src/libkshark-tepdata.c.

I find it hard to believe that we can't break this up more.

Can you tell me what the old API did and what the new API does. I can
probably help out in taking steps to go from one to the other. But I don't
understand what exactly is changing without spending several days staring
at this code.

The essence of the change is that in the API we are not allowed to include any trace-cmd header files. And because we have been using trace-cmd definitions and methods everywhere, once we remove the header inclusion everything breaks. The only place that is allowed to include trace-cmd stuff is the implementation of the readout interface for trace-cmd data (src/libkshark-tepdata.c).

I understand that the approach I am taking with the introduction of the regression is against all rules and is a BIG compromise. This is the reason why I wanted to keep at least the two very basic example applications functional during the change. Of course we can further break this huge and ugly change into smaller changes that have better logical connection, but in such a case it will be very very hard to keep the examples functional during those changes.

Thanks!
Yordan


-- Steve




[Index of Archives]     [Linux USB Development]     [Linux USB Development]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux