Subject: Re: linux-next: build failure after merge of the drm-intel tree

From: Jani Nikula <[email-masked]>
Date: Fri, 28 Jun 2024 12:29:01 +0300

On Fri, 28 Jun 2024, Dave Airlie <[email-masked]> wrote:
> On Tue, 18 Jun 2024 at 05:26, Rodrigo Vivi <[email-masked]> wrote:
>>
>> On Wed, Jun 12, 2024 at 02:12:39PM +1000, Stephen Rothwell wrote:
>> > Hi all,
>> >
>> > After merging the drm-intel tree, today's linux-next build (i386
>> > defconfig) failed like this:
>> >
>> > x86_64-linux-gnu-ld: drivers/gpu/drm/i915/display/intel_vrr.o: in function `intel_vrr_compute_config':
>> > intel_vrr.c:(.text+0x4e4): undefined reference to `__udivdi3'
>> >
>> > Caused by commit
>> >
>> >   1676ecd303ac ("drm/i915: Compute CMRR and calculate vtotal")
>> >
>> > I have reverted that commit for today.
>>
>> the fixes for that is available in drm-intel-next now. you should probably
>> remove the revert.
>>
>> Thanks for the heads up on that.
>
> In file included from
> /home/airlied/devel/kernel/dim/src/arch/arm/include/asm/div64.h:107,
>                  from /home/airlied/devel/kernel/dim/src/include/linux/math.h:6,
>                  from
> /home/airlied/devel/kernel/dim/src/include/linux/kernel.h:27,
>                  from
> /home/airlied/devel/kernel/dim/src/include/linux/cpumask.h:11,
>                  from /home/airlied/devel/kernel/dim/src/include/linux/smp.h:13,
>                  from
> /home/airlied/devel/kernel/dim/src/include/linux/lockdep.h:14,
>                  from
> /home/airlied/devel/kernel/dim/src/include/linux/spinlock.h:63,
>                  from
> /home/airlied/devel/kernel/dim/src/include/linux/kref.h:16,
>                  from
> /home/airlied/devel/kernel/dim/src/include/drm/drm_device.h:5,
>                  from
> /home/airlied/devel/kernel/dim/src/include/drm/drm_drv.h:35,
>                  from
> /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h:13,
>                  from
> /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/i915/display/intel_vrr.c:7:
> /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/i915/display/intel_vrr.c:
> In function ‘cmrr_get_vtotal’:
> /home/airlied/devel/kernel/dim/src/include/asm-generic/div64.h:222:35:
> warning: comparison of distinct pointer types lacks a cast
>   222 |         (void)(((typeof((n)) *)0) == ((uint64_t *)0));  \
>       |                                   ^~
> /home/airlied/devel/kernel/dim/src/drivers/gpu/drm/i915/display/intel_vrr.c:155:35:
> note: in expansion of macro ‘do_div’
>   155 |         crtc_state->cmrr.cmrr_m = do_div(adjusted_pixel_rate,
> crtc_state->cmrr.cmrr_n);
>       |                                   ^~~~~~
>
> The fixes might need some more fixing, 32-bit arm build.

Hmm. Works for me with commit 213cc30331e9 ("drm/i915/display: Consider
adjusted_pixel_rate to be u64"). Are you hitting this with drm/next
which doesn't have that yet?

BR,
Jani.

> Dave.
>> > --
>> > Cheers,
>> > Stephen Rothwell

-- 
Jani Nikula, Intel