DELTA_M_FRAC_DEN
delta -= ((s64)DELTA_M_MAX * DELTA_M_FRAC_DEN) / 2;
delta += ((s64)DELTA_M_MAX * DELTA_M_FRAC_DEN) / 2;
delta = div64_s64(delta, ((s64)DELTA_M_MAX * DELTA_M_FRAC_DEN));
do_div(num, DELTA_M_FRAC_DEN);