On Fri, Feb 09, 2018 at 12:33:36PM -0800, Richard Cochran wrote:
> On Sat, Feb 03, 2018 at 10:40:08PM +0100, Andrew Lunn wrote:
> > +static int mv88e6xxx_ptp_adjfine(struct ptp_clock_info *ptp, long 
> > scaled_ppm)
> > +{
> > +   struct mv88e6xxx_chip *chip = ptp_to_chip(ptp);
> > +   int neg_adj = 0;
> > +   u32 diff, mult;
> > +   u64 adj;
> > +
> > +   if (scaled_ppm < 0) {
> > +           neg_adj = 1;
> > +           scaled_ppm = -scaled_ppm;
> > +   }
> > +   mult = CC_MULT;
> > +   adj = scaled_ppm * CC_MULT_NUM;
>               ^^^^^^^^^^^^^^^^^^^^^^^^
> This easily overflows on 32 bit platforms.  My bad.  Fix below...

Hi Richard

Thanks, i will squash the fix in for the next version.

        Andrew

Reply via email to