• Chen Yu's avatar
    intel_pstate: Fix user input of min/max to legal policy region · 43717aad
    Chen Yu authored
    In current code, max_perf_pct might be smaller than min_perf_pct
    by improper user input:
    
    $ grep . /sys/devices/system/cpu/intel_pstate/m*_perf_pct
    /sys/devices/system/cpu/intel_pstate/max_perf_pct:100
    /sys/devices/system/cpu/intel_pstate/min_perf_pct:100
    
    $ echo 80 > /sys/devices/system/cpu/intel_pstate/max_perf_pct
    
    $ grep . /sys/devices/system/cpu/intel_pstate/m*_perf_pct
    /sys/devices/system/cpu/intel_pstate/max_perf_pct:80
    /sys/devices/system/cpu/intel_pstate/min_perf_pct:100
    
    Fix this problem by 2 steps:
     1. Normalize the user input to [min_policy, max_policy].
     2. Make sure max_perf_pct>=min_perf_pct, suggested by Seiichi Ikarashi.
    Signed-off-by: default avatarChen Yu <yu.c.chen@intel.com>
    Acked-by: default avatarKristen Carlson Accardi <kristen@linux.intel.com>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    43717aad
intel_pstate.c 30 KB