2021-02-10 08:34:31

by Naresh Kamboju

[permalink] [raw]
Subject: [next] [mips] spinlock.h:17:28: error: redefinition of 'queued_spin_unlock'

While building Linux next tag 20210209 mips uImage.gz failed with below configs

- mips (cavium_octeon_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
- mips (malta_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
- mips (nlm_xlp_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
- mips (defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED

make --silent --keep-going --jobs=8
O=/home/tuxbuild/.cache/tuxmake/builds/1/tmp ARCH=mips
CROSS_COMPILE=mips-linux-gnu- 'CC=sccache mips-linux-gnu-gcc'
'HOSTCC=sccache gcc' uImage.gz
In file included from /include/linux/spinlock.h:90,
from /include/linux/ipc.h:5,
from /include/uapi/linux/sem.h:5,
from /include/linux/sem.h:5,
from /include/linux/compat.h:14,
from /arch/mips/kernel/asm-offsets.c:12:
/arch/mips/include/asm/spinlock.h:17:28: error: redefinition of
'queued_spin_unlock'
17 | #define queued_spin_unlock queued_spin_unlock
| ^~~~~~~~~~~~~~~~~~

Reported-by: Naresh Kamboju <[email protected]>

build link,
https://builds.tuxbuild.com/1oF9lkBAeWM2WvR11O2Yun8ERNT/

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


2021-02-10 15:08:34

by Waiman Long

[permalink] [raw]
Subject: Re: [next] [mips] spinlock.h:17:28: error: redefinition of 'queued_spin_unlock'

On 2/10/21 12:30 AM, Naresh Kamboju wrote:
> While building Linux next tag 20210209 mips uImage.gz failed with below configs
>
> - mips (cavium_octeon_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> - mips (malta_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> - mips (nlm_xlp_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> - mips (defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
>
> make --silent --keep-going --jobs=8
> O=/home/tuxbuild/.cache/tuxmake/builds/1/tmp ARCH=mips
> CROSS_COMPILE=mips-linux-gnu- 'CC=sccache mips-linux-gnu-gcc'
> 'HOSTCC=sccache gcc' uImage.gz
> In file included from /include/linux/spinlock.h:90,
> from /include/linux/ipc.h:5,
> from /include/uapi/linux/sem.h:5,
> from /include/linux/sem.h:5,
> from /include/linux/compat.h:14,
> from /arch/mips/kernel/asm-offsets.c:12:
> /arch/mips/include/asm/spinlock.h:17:28: error: redefinition of
> 'queued_spin_unlock'
> 17 | #define queued_spin_unlock queued_spin_unlock
> | ^~~~~~~~~~~~~~~~~~
>
> Reported-by: Naresh Kamboju <[email protected]>
>
> build link,
> https://builds.tuxbuild.com/1oF9lkBAeWM2WvR11O2Yun8ERNT/
>
I have just posted a patch to reorder qspinlock.h and qrwlock.h include
ordering. Hopefully that can fix the compilation problem though I don't
have a mips building environment to verify that.

Cheers,
Longman

2021-02-10 15:29:51

by Naresh Kamboju

[permalink] [raw]
Subject: Re: [next] [mips] spinlock.h:17:28: error: redefinition of 'queued_spin_unlock'

On Wed, 10 Feb 2021 at 20:32, Waiman Long <[email protected]> wrote:
>
> On 2/10/21 12:30 AM, Naresh Kamboju wrote:
> > While building Linux next tag 20210209 mips uImage.gz failed with below configs
> >
> > - mips (cavium_octeon_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> > - mips (malta_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> > - mips (nlm_xlp_defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> > - mips (defconfig) with gcc-8, gcc-9 and gcc-10 - FAILED
> >
> > make --silent --keep-going --jobs=8
> > O=/home/tuxbuild/.cache/tuxmake/builds/1/tmp ARCH=mips
> > CROSS_COMPILE=mips-linux-gnu- 'CC=sccache mips-linux-gnu-gcc'
> > 'HOSTCC=sccache gcc' uImage.gz
> > In file included from /include/linux/spinlock.h:90,
> > from /include/linux/ipc.h:5,
> > from /include/uapi/linux/sem.h:5,
> > from /include/linux/sem.h:5,
> > from /include/linux/compat.h:14,
> > from /arch/mips/kernel/asm-offsets.c:12:
> > /arch/mips/include/asm/spinlock.h:17:28: error: redefinition of
> > 'queued_spin_unlock'
> > 17 | #define queued_spin_unlock queued_spin_unlock
> > | ^~~~~~~~~~~~~~~~~~
> >
> > Reported-by: Naresh Kamboju <[email protected]>
> >
> > build link,
> > https://builds.tuxbuild.com/1oF9lkBAeWM2WvR11O2Yun8ERNT/
> >
> I have just posted a patch to reorder qspinlock.h and qrwlock.h include
> ordering. Hopefully that can fix the compilation problem though I don't
> have a mips building environment to verify that.


That was a global problem now it is getting solved by "tuxmake "

# TuxMake is a command line tool and Python library that provides
# portable and repeatable Linux kernel builds across a variety of
# architectures, toolchains, kernel configurations, and make targets.
#
# TuxMake supports the concept of runtimes.
# See https://docs.tuxmake.org/runtimes/, for that to work it requires
# that you install podman or docker on your system.
#
# To install tuxmake on your system globally:
# sudo pip3 install -U tuxmake
#
# See https://docs.tuxmake.org/ for complete documentation.

tuxmake --runtime podman --target-arch mips --toolchain gcc-10
--kconfig cavium_octeon_defconfig

build link,
https://builds.tuxbuild.com/1oF9lkBAeWM2WvR11O2Yun8ERNT/

- Naresh