Li, Aubrey wrote: > Li, Aubrey wrote: > >> Hi Rafael, >> >> Rafael.Vanoni wrote: >> >>> Here's a patch to identify the function causing a xcall. Here's an >>> example output of the change this introduces: >>> >>> from >>> >>> sched : <cross calls> >>> >>> to >>> >>> sched : <cross call> unix`dtrace_xcall_func >>> >>> >>> I'm not sure whether this should be the default option or only for >>> -v. So please let me know what you think. >>> >>> Thanks, >>> Rafael >> I saw this patch in the powertop repo. >> Previously, the cross call number on my idle system is: ============= >> Wakeups-from-idle per second: 1621.6 interval: 5.0s >> Top causes for wakeups: >> 76.1% (1234.3) sched :<cross calls> >> >> --------snip-------- >> 0.9% ( 14.0) dtrace :<cross calls> >> ============ >> >> with this patch, the number decreased too much, see below: >> ============== Wakeups-from-idle per second: 1592.7 interval: 5.0s >> Top causes for wakeups: >> 11.2% (178.8) sched :<cross call> >> unix`dtrace_xcall_func >> ----snip---- >> 1.0% ( 16.0) dtrace :<cross call> unix`dtrace_xcall_func >> ============== >> >> I believe the actual cross call shouldn't vary too much in idle. >> Any thoughts? >> > hmm..., on x86, the patch missed xc_capture_cpus() function. > on sparc, it missed too much. > It looks like "sysinfo:::xcalls" is far more than "fbt::xc_common:entry". > > If we want to implement 6781149, we probably need to improve the probe. > > Thanks, > -Aubrey
Hi Aubrey On which system/build are you seeing this? Before pushing this changeset, my tests showed a very small difference in reported xcalls, and they had actually increased. Please note that for your example above, those two lines are reporting different activities. 6781149 has no effect on which execname is reported for cross calls. Thanks, Rafael
