Subject: Re: linux-next: Tree for Nov 29 (drm/i915)

From: Stephen Rothwell <[email-masked]>
Date: Fri, 30 Nov 2018 08:00:42 +1100

Hi all,

On Thu, 29 Nov 2018 09:09:25 -0800 Randy Dunlap <[email-masked]> wrote:
>
> on i386:
> 
> 248 "multiple definition of ...".  E.g.:
> 
>   LD [M]  drivers/gpu/drm/i915/i915.o
> ld: drivers/gpu/drm/i915/i915_irq.o: in function `intel_opregion_resume':
> i915_irq.c:(.text+0x58f0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_irq.o: in function `intel_opregion_suspend':
> i915_irq.c:(.text+0x5900): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/i915_memcpy.o: in function `intel_opregion_resume':
> i915_memcpy.c:(.text+0xa0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_memcpy.o: in function `intel_opregion_suspend':
> i915_memcpy.c:(.text+0xb0): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/i915_mm.o: in function `intel_opregion_resume':
> i915_mm.c:(.text+0x30): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_mm.o: in function `intel_opregion_suspend':
> i915_mm.c:(.text+0x40): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/i915_params.o: in function `intel_opregion_resume':
> i915_params.c:(.text+0x0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_params.o: in function `intel_opregion_suspend':
> i915_params.c:(.text+0x10): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/i915_pci.o: in function `intel_opregion_resume':
> i915_pci.c:(.text+0xb0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_pci.o: in function `intel_opregion_suspend':
> i915_pci.c:(.text+0xc0): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/i915_suspend.o: in function `intel_opregion_resume':
> i915_suspend.c:(.text+0x110): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_suspend.o: in function `intel_opregion_suspend':
> i915_suspend.c:(.text+0x120): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/i915_sysfs.o: in function `intel_opregion_resume':
> i915_sysfs.c:(.text+0x710): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/i915_sysfs.o: in function `intel_opregion_suspend':
> i915_sysfs.c:(.text+0x720): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/intel_csr.o: in function `intel_opregion_resume':
> intel_csr.c:(.text+0x3c0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/intel_csr.o: in function `intel_opregion_suspend':
> intel_csr.c:(.text+0x3d0): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/intel_device_info.o: in function `intel_opregion_resume':
> intel_device_info.c:(.text+0x14c0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/intel_device_info.o: in function `intel_opregion_suspend':
> intel_device_info.c:(.text+0x14d0): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/intel_pm.o: in function `intel_opregion_resume':
> intel_pm.c:(.text+0xad70): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/intel_pm.o: in function `intel_opregion_suspend':
> intel_pm.c:(.text+0xad80): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here
> ld: drivers/gpu/drm/i915/intel_runtime_pm.o: in function `intel_opregion_resume':
> intel_runtime_pm.c:(.text+0x2cb0): multiple definition of `intel_opregion_resume'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d40): first defined here
> ld: drivers/gpu/drm/i915/intel_runtime_pm.o: in function `intel_opregion_suspend':
> intel_runtime_pm.c:(.text+0x2cc0): multiple definition of `intel_opregion_suspend'; drivers/gpu/drm/i915/i915_drv.o:i915_drv.c:(.text+0x2d50): first defined here

Caused by commit

  a950adc6c343 ("drm/i915: Stop calling intel_opregion unregister/register in suspend/resume")

which forgot the "static inline" on the stub versions ...

-- 
Cheers,
Stephen Rothwell