Re: [next] mips-mt.c:233:19: error: conflicting types for 'mt_init'

From: Randy Dunlap
Date: Mon Mar 07 2022 - 15:51:35 EST




On 3/7/22 11:15, Liam Howlett wrote:
> Hello Randy,
>
> I did address this when it occurred on the 24th [1]. I had looked at
> this and was thinking I would rename the maple tree function, but
> Matthew suggested renaming the mips function instead. I looked into the
> conflict and the arch/mips/kernel/mips-mt.c uses the mips_ prefix for
> almost all of the functions. So I generated a patch on my tree for
> next-20220225 which fixes the issue by renaming the mips side of things.
> Please see 51e773764d11 for the very small rename.
>
> [1]
> https://lore.kernel.org/linux-mm/202202241817.MXoE0NcM-lkp@xxxxxxxxx/
>
> Thanks,
> Liam

OK, sounds good. Thanks.

>
> * Randy Dunlap <rdunlap@xxxxxxxxxxxxx> [220305 22:50]:
>> Hi Liam,
>>
>> Would you consider renaming maple tree's "mt_init()" function to
>> maple_tree_init() or mtree_init() or something that does not
>> conflict with the mt_init() function in arch/mips/ so that
>> these build errors don't happen?
>>
>> thanks.
>>
>> On 2/24/22 23:09, Naresh Kamboju wrote:
>>> [Please ignore this email if it is already reported]
>>>
>>> Linux next-20220224 arch mips build errors / warnings noticed [1].
>>>
>>> Build configs:
>>> - mips-gcc-8-malta_defconfig
>>> - mips-gcc-10-malta_defconfig
>>> - mips-gcc-8-defconfig
>>> - mips-gcc-10-defconfig
>>>
>>> metadata:
>>> git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
>>> git_sha: 44948bd49d878dad6c9707e34f4a06df73c3a800
>>> git_short_log: 44948bd49d87 (\Add linux-next specific files for 20220224\)
>>> kconfig: defconfig
>>> target_arch: mips
>>> toolchain: gcc-10
>>>
>>>
>>> Build errors / warnings:
>>>
>>> arch/mips/kernel/mips-mt.c:233:19: error: conflicting types for 'mt_init'
>>> 233 | static int __init mt_init(void)
>>> | ^~~~~~~
>>> In file included from include/linux/mm_types.h:12,
>>> from include/linux/mmzone.h:21,
>>> from include/linux/gfp.h:6,
>>> from include/linux/radix-tree.h:12,
>>> from include/linux/idr.h:15,
>>> from include/linux/kernfs.h:12,
>>> from include/linux/sysfs.h:16,
>>> from include/linux/kobject.h:20,
>>> from include/linux/energy_model.h:7,
>>> from include/linux/device.h:16,
>>> from arch/mips/kernel/mips-mt.c:7:
>>> include/linux/maple_tree.h:589:20: note: previous definition of
>>> 'mt_init' was here
>>> 589 | static inline void mt_init(struct maple_tree *mt)
>>> | ^~~~~~~
>>> make[3]: *** [scripts/Makefile.build:288: arch/mips/kernel/mips-mt.o] Error 1
>>>
>>> Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
>>>
>>> Steps to reproduce:
>>> ------------------
>>> # To install tuxmake on your system globally:
>>> # sudo pip3 install -U tuxmake
>>>
>>> tuxmake --runtime podman --target-arch mips --toolchain gcc-10
>>> --kconfig defconfig
>>>
>>> --
>>>
>>> [1] https://builds.tuxbuild.com/25aFF2X7uoyebURaYzNHW9FVEmN/
>>
>> --
>> ~Randy

--
~Randy