s390 support #152
Comments
I just tried building this in our Docker image. After installing
I don't know if I am holding wrong or what but the most glaring issues (can file separate issues for these if needed):
For CI, we'll need to get a proper set of QEMU flags and a rootfs going. |
On Fri, May 3, 2019 at 10:39 PM Nathan Chancellor ***@***.***> wrote:
I just tried building this in our Docker image. After installing
binutils-s390x-linux-gnu and applying @arndb <https://github.com/arndb>'s
patches from the s390 tree
<https://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git/log/?h=features>
on top of next-20190503:
$ git diff c263a4e990b7^..ce968f6012f6 | git apply
$ make -j16 ARCH=s390 CROSS_COMPILE=s390x-linux-gnu- CC=clang-9 HOSTCC=clang-9 O=/out performance_defconfig bzImage
Build log <https://gist.github.com/0eafed9755907f3bc6c35ca30fb19f18>
Note: building with "make -s" makes much more readable logs.
I don't know if I am holding wrong or what but the most glaring issues
(can file separate issues for these if needed):
-
-Waddress-of-packed-member isn't getting disabled properly (maybe
something with cc-option as well because -fno-null-pointer-checks
isn't being enabled either).
Hmm, regardless of whether the logic to turn off the warning is correct, it
seems to me
that we shouldn't really turn off this one in particular, the warnings do
seem
to indicate actual bugs.
-
-
Error in lib/raid6/s390vx8.c (maybe a binutils error?):
lib/raid6/s390vx8.c:63:16: error: invalid operand in inline asm: 'VLM $2,$3,0,${1:r}'
asm volatile ("VLM %2,%3,0,%r1"
^
lib/raid6/s390vx8.c:63:16: error: invalid operand in inline asm: 'VLM $2,$3,0,${1:r}'
lib/raid6/s390vx8.c:63:16: error: invalid operand in inline asm: 'VLM $2,$3,0,${1:r}'
lib/raid6/s390vx8.c:63:16: error: invalid operand in inline asm: 'VLM $2,$3,0,${1:r}'
lib/raid6/s390vx8.c:63:16: error: invalid operand in inline asm: 'VLM $2,$3,0,${1:r}'
lib/raid6/s390vx8.c:63:16: error: invalid operand in inline asm: 'VLM $2,$3,0,${1:r}'
6 errors generated.
I don't remember seeingi this one. Which binutils version did you use?
Arnd
|
Copy.
Note, this has been disabled for clang since https://git.kernel.org/linus/bfb38988c51e440fd7062ddf3157f7d8b1dd5d70 and Linus disabled it for the whole kernel a couple of days ago in https://git.kernel.org/linus/6f303d60534c46aa1a239f29c321f95c83dda748
I'll try tip of tree and Debian stable. |
Turns out that error is an LLVM regression because the release/8.x branch is fine. I'll bisect tonight |
As it turns out... cc @nickdesaulniers
|
After reverting llvm/llvm-project@7ab164c, I can build performance_defconfig without any issues. However, booting it in QEMU does not work. It seems that |
Haha, sorry! Thanks for bisecting. I didn't even touch |
Looking through https://github.com/bminor/binutils-gdb/tree/master/gas/testsuite/gas/s390, it seems that So if my patch has anything to do with interpreting |
Looks like the s390 guys are testing clang themselves? https://git.kernel.org/linus/740eaf7d4dd255789987a543b0203ca239b37087
works for me at https://git.kernel.org/linus/6992ca0dd017ebaa2bf8e9dcc49f1c3b7033b082 |
@arndb sent a lot of patches for 390 recently. I think there's no more build errors? If so, maybe there's a defconfig or certain machine we can start testing?
The text was updated successfully, but these errors were encountered: