2022-02-25 10:52:01

by Naresh Kamboju

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

[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 <[email protected]>

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

--
Linaro LKFT
https://lkft.linaro.org

[1] https://builds.tuxbuild.com/25aFF2X7uoyebURaYzNHW9FVEmN/


2022-03-06 17:51:53

by Randy Dunlap

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

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 <[email protected]>
>
> 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

2022-03-07 22:14:03

by Liam R. Howlett

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

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/[email protected]/

Thanks,
Liam

* Randy Dunlap <[email protected]> [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 <[email protected]>
> >
> > 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

2022-03-07 23:29:10

by Randy Dunlap

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



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/[email protected]/
>
> Thanks,
> Liam

OK, sounds good. Thanks.

>
> * Randy Dunlap <[email protected]> [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 <[email protected]>
>>>
>>> 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