On Tue, Jan 31, 2023 at 09:25:51AM +0800, Wangshaobo (bobo) wrote: > 在 2023/1/30 18:25, Mark Rutland 写道: > > On Sat, Jan 28, 2023 at 04:46:48PM +0800, Wangshaobo (bobo) wrote: > > > 锟斤拷 2023/1/23 21:45, Mark Rutland 写锟斤拷: > > > > +config DYNAMIC_FTRACE_WITH_CALL_OPS > > > > + def_bool y > > > > + depends on HAVE_DYNAMIC_FTRACE_WITH_CALL_OPS > > > > + > > > Hi Mark, > > > > Hi, > > > > > I have test your patches and it looks fine with my sample module, > > > > Thanks for testing! > > > > > but here setting DYNAMIC_FTRACE_WITH_CALL_OPS to y immutably may increase the > > > .text section size by 5% or more, how about making this to optional^^ > > > > We could consider making this optional. I had not made this optional so far as > > in the future I'd like to make this the only implementation of ftrace on arm64 > > (once we can drop the old mcount version, and once we've sorted out the > > incompatibility with CFI). In the mean time, it probably makes sense to have > > the option at least to enable testing of each of the two forms. > > > > Is your concern that the overall kernel image size is larger, or do you care > > specifically about the size of the .text section for some reason? > > > > Thanks, > > Mark > Embedded devices may pay more attention to Image size, and which may also > indirectly affects performance, for more reason, I appreciate those concerns, however: a) For the Image size, the mcount_loc table and associated relocations already imposes a much greater penalty. So I'd expect that where the size truly matters, ftrace would be completely disabled anyway. I'm currently looking at shrinking the mcount_loc table (and removing the need for relocationgs), which should save much more space. b) For performance, without data this is supposition. Everything so far indicates that there is not a measureable performance difference, and from other threads it's possible that the increased function alignment *aids* performance. If you have data to the contrary, I'm happy to investigate. > I think making sense to have the option for testing is more important. As above, I'm happy to add an option for functional testing of the ftrace implementation, but I don't think that it's a good idea to use that as a size or performance tweak. Thanks, Mark.