@@ -48,9 +48,9 @@ static inline int32_t mul_fp(int32_t x, int32_t y)
48
48
return ((int64_t )x * (int64_t )y ) >> FRAC_BITS ;
49
49
}
50
50
51
- static inline int32_t div_fp (int32_t x , int32_t y )
51
+ static inline int32_t div_fp (s64 x , s64 y )
52
52
{
53
- return div_s64 ((int64_t )x << FRAC_BITS , y );
53
+ return div64_s64 ((int64_t )x << FRAC_BITS , y );
54
54
}
55
55
56
56
static inline int ceiling_fp (int32_t x )
@@ -795,7 +795,7 @@ static inline void intel_pstate_set_sample_time(struct cpudata *cpu)
795
795
static inline int32_t intel_pstate_get_scaled_busy (struct cpudata * cpu )
796
796
{
797
797
int32_t core_busy , max_pstate , current_pstate , sample_ratio ;
798
- u32 duration_us ;
798
+ s64 duration_us ;
799
799
u32 sample_time ;
800
800
801
801
/*
@@ -822,8 +822,8 @@ static inline int32_t intel_pstate_get_scaled_busy(struct cpudata *cpu)
822
822
* to adjust our busyness.
823
823
*/
824
824
sample_time = pid_params .sample_rate_ms * USEC_PER_MSEC ;
825
- duration_us = ( u32 ) ktime_us_delta (cpu -> sample .time ,
826
- cpu -> last_sample_time );
825
+ duration_us = ktime_us_delta (cpu -> sample .time ,
826
+ cpu -> last_sample_time );
827
827
if (duration_us > sample_time * 3 ) {
828
828
sample_ratio = div_fp (int_tofp (sample_time ),
829
829
int_tofp (duration_us ));
0 commit comments