mul_frac
static __always_inline u64 pvclock_scale_delta(u64 delta, u32 mul_frac, int shift)
: "a" ((u32)delta), "1" ((u32)(delta >> 32)), "2" (mul_frac) );
[mul_frac]"rm"((u64)mul_frac));
p = mul_frac(err < 0 ? tz->tzp->k_po : tz->tzp->k_pu, err);
i = mul_frac(tz->tzp->k_i, params->err_integral);
s64 i_next = i + mul_frac(tz->tzp->k_i, err);
d = mul_frac(tz->tzp->k_d, err - params->prev_err);
static inline u64 pvclock_scale_delta(u64 delta, u32 mul_frac, int shift)
: "a" ((u32)delta), "1" ((u32)(delta >> 32)), "2" (mul_frac) );
[mul_frac]"rm"((u64)mul_frac));