Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix sparc64 build (#1178) #1336

Merged
merged 7 commits into from
Aug 3, 2022
Merged

Conversation

gctucker
Copy link
Contributor

@gctucker gctucker commented Aug 1, 2022

Cherry-pick the change from #1178 to enable sparc64 builds and fix a few issues to get it to work as expected. This does not include the QEMU changes for running tests.

@gctucker gctucker requested a review from a team August 1, 2022 17:06
@nuclearcat
Copy link
Member

Build fails:

make_kernel
make KBUILD_BUILD_USER=KernelCI ARCH=sparc64 HOSTCC=gcc CROSS_COMPILE=sparc64-linux-gnu- CC="ccache sparc64-linux-gnu-gcc" O=/root/kernelci-quickstart/kernelci-core/linux-build -Clinux-kdir -j34 -s zImage
<stdin>:1517:2: warning: #warning syscall clone3 not implemented [-Wcpp]
WARNING: modpost: EXPORT symbol "_mcount" [vmlinux] version generation failed, symbol will not be versioned.
Is "_mcount" prototyped in <asm/asm-prototypes.h>?
  kernel: arch/sparc/boot/image is ready
  kernel: arch/sparc/boot/zImage is ready
No kernel image found

I think because for sparc, it generates image in arch/sparc/boot, there is no arch/sparc64

montjoie and others added 3 commits August 3, 2022 07:18
For testing sparc hardware and qemu, we need to build Linux for
sparc64 arch.

Signed-off-by: Corentin LABBE <clabbe@baylibre.com>
Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
Fix the make target and kernel image name for sparc64 as the standard
name is zImage.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
Fix the cross-compile string for sparc64 based on the Debian
toolchain.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
@gctucker gctucker force-pushed the fixup-1178-sparc64 branch from 4b745e8 to c156181 Compare August 3, 2022 05:18
@nuclearcat
Copy link
Member

Should i retest or its not fixed yet?

Rename the "sparc64" architecture to "sparc" which is the one used in
the kernel source tree.  The 32/64 choice can be made by building
either the sparc32_defconfig or sparc64_defconfig using the same
sparc64 toolchain.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
@gctucker gctucker force-pushed the fixup-1178-sparc64 branch from 99ffb90 to b9b4ea6 Compare August 3, 2022 06:32
The kernel architecture name for sparc64 is sparc, so rename the
sparc64 Docker image to sparc accordingly.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
Add a regex filter in the defaults for the sparc architecture with
sparc64_defconfig to only build this one unless otherwise specified.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
@gctucker
Copy link
Contributor Author

gctucker commented Aug 3, 2022

I'm testing this on staging

Update the dictionary with the kernel image names to use "sparc"
instead of "sparc64" as the arch name.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
Copy link
Contributor Author

@gctucker gctucker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@gctucker gctucker merged commit 83ba936 into kernelci:main Aug 3, 2022
@gctucker gctucker deleted the fixup-1178-sparc64 branch August 3, 2022 18:40
@gctucker gctucker mentioned this pull request Aug 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants