lkml.org 
[lkml]   [2017]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH] cpufreq: schedutil: Always trace frequency if it does not change
    On Wed, Mar 22, 2017 at 10:29 AM, Peter Zijlstra <peterz@infradead.org> wrote:
    > On Wed, Mar 22, 2017 at 01:56:53AM +0100, Rafael J. Wysocki wrote:
    >> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    >>
    >> sugov_update_commit() calls trace_cpu_frequency() to record the
    >> current CPU frequency if it has not changed in the fast switch case
    >> to prevent utilities from getting confused (they may report that the
    >> CPU is idle if the frequency has not been recorded for too long, for
    >> example).
    >
    > That seems like buggy tools; we should then fix the tools, not the
    > kernel to emit more superfluous information.
    >
    >> However, the same problem may occur for a cpufreq driver that doesn't
    >> support fast frequency switching and implements the ->target callback
    >> (that is, it doesn't use frequency tables), but trace_cpu_frequency()
    >> is not called if frequency updates are skipped in that case.
    >
    > I'm having trouble parsing that; am I right in understanding this is the
    > exact same scenario where only superfluous changes are omitted?

    Yes, that's the same scenario basically, which is the point of the patch. :-)

    >> For this reason, modify sugov_update_commit() to always call
    >> trace_cpu_frequency() when the new frequency to be set is equal to
    >> the one that was set previously and reorganize the code in there to
    >> reduce duplication somewhat.
    >
    > So why not fix the tools?

    Because I can't.

    I just can't go and fix all of the tools binaries that people use out
    there and I want them to use recent kernels at the same time.

    But anyway, I think that the code with the patch looks better than
    without it regardless and having a frivolous difference there between
    the two cases is not useful.

    \
     
     \ /
      Last update: 2017-03-22 13:53    [W:2.926 / U:0.176 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site