-
Notifications
You must be signed in to change notification settings - Fork 18
Support building the arm32 kernel with lld #81
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
heh, at least the first patch I asked Greg why it wasn't sent for arm32 as well...
I am going to try to add some more justification to patch 2/2 by testing on my Raspberry Pi tonight then I'll merge this here and send them upstream. |
Can we build a working raspberry pi kernel w/ Clang? I should try on my rp0. |
I recommend filing a bug against lld and cc Ruiu and grimar@, they can probably give us more context as to this flag. If we wrap this flag in |
I can on my RPI 3B+: https://github.com/nathanchance/pi-kernel/commits/rpi-4.14.y
Will do. I can link the kernel with lld no problem but when I tried to boot it, it panicked. I haven't had time to triage it unfortunately (might be because of lack of that flag or some other thing). I'll be home later tonight to do so. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do not merge until the boot failure is resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Travis presubmit run: https://travis-ci.com/nathanchance/continuous-integration/builds/93235172
I can link the kernel with lld no problem but when I tried to boot it, it panicked.
Ah, so rp3 has a boot issue, but defconfigs do not. That's ok.
Yes sorry, should have been more clear! |
@nathanchance not sure about the |
Done (hopefully I did it right...): https://bugs.llvm.org/show_bug.cgi?id=39886
Done: https://lore.kernel.org/lkml/[email protected]/ |
LLVM patch for |
I tried using lld to link a kernel for Arm32 Thumb2 using the last next (tag
Building a non-Thumb2 kernel seems to work and boot in Qemu here. |
D55505 landed as https://reviews.llvm.org/rL351326 @nickdesaulniers. |
Done. |
I plan to merge this when http://git.armlinux.org.uk/cgit/linux-arm.git/commit/?id=091bb549f7722723b284f63ac665e2aedcf9dec9 hits mainline (which should be in the next week or so due to the merge window) so that we don't have to carry that patch in this repo. |
Demote ld.bfd to cron only just to make sure it still works. Presubmit: https://travis-ci.com/nathanchance/continuous-integration/builds/104651330 [skip ci] Signed-off-by: Nathan Chancellor <[email protected]>
I will work to get these two patches upstreamed so they can be dropped but I will need to add some additional justification to patch 2/2 (maybe @agners has some insight there, as my guess is that it just isn't necessary but something tells me RMK might want something more than that).
Travis presubmit run: https://travis-ci.com/nathanchance/continuous-integration/builds/93235172