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



Reply via email to