On Wed, Nov 23, 2016 at 3:07 PM, Chris Wilson <ch...@chris-wilson.co.uk> wrote:
> Just a couple of naked 64bit divides causing link errors on 32bit > builds, with: > > ERROR: "__udivdi3" [drivers/gpu/drm/i915/i915.ko] undefined! > > v2: do_div() is only u64/u32, we need a u32/u64! > v3: div_u64() == u64/u32, div64_u64() == u64/u64 > > Reported-by: kbuild test robot <fengguang...@intel.com> > Fixes: d79651522e89 ("drm/i915: Enable i915 perf stream for Haswell OA > unit") > Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> > Cc: Robert Bragg <rob...@sixbynine.org> > --- > drivers/gpu/drm/i915/i915_perf.c | 13 +++++++------ > 1 file changed, 7 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_ > perf.c > index 95512824922b..14de9a4eee27 100644 > --- a/drivers/gpu/drm/i915/i915_perf.c > +++ b/drivers/gpu/drm/i915/i915_perf.c > @@ -974,8 +974,8 @@ static void i915_oa_stream_disable(struct > i915_perf_stream *stream) > > static u64 oa_exponent_to_ns(struct drm_i915_private *dev_priv, int > exponent) > { > - return 1000000000ULL * (2ULL << exponent) / > - dev_priv->perf.oa.timestamp_frequency; > + return div_u64(1000000000ULL * (2ULL << exponent), > + dev_priv->perf.oa.timestamp_frequency); > } > > static const struct i915_perf_stream_ops i915_oa_stream_ops = { > @@ -1051,16 +1051,17 @@ static int i915_oa_stream_init(struct > i915_perf_stream *stream, > > dev_priv->perf.oa.periodic = props->oa_periodic; > if (dev_priv->perf.oa.periodic) { > - u64 period_ns = oa_exponent_to_ns(dev_priv, > - > props->oa_period_exponent); > + u32 tail; > > dev_priv->perf.oa.period_exponent = > props->oa_period_exponent; > > /* See comment for OA_TAIL_MARGIN_NSEC for details > * about this tail_margin... > */ > - dev_priv->perf.oa.tail_margin = > - ((OA_TAIL_MARGIN_NSEC / period_ns) + 1) * > format_size; > + tail = div64_u64(OA_TAIL_MARGIN_NSEC, > + oa_exponent_to_ns(dev_priv, > + > props->oa_period_exponent)); > + dev_priv->perf.oa.tail_margin = (tail + 1) * format_size; > } > > if (stream->ctx) { > -- > 2.10.2 > > This looks good to me, thanks. Reviewed-by: Robert Bragg <rob...@sixbynine.org>
_______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx