ThunderX support broken since r336520
kraileth at elderlinux.org
kraileth at elderlinux.org
Wed Feb 13 21:41:10 UTC 2019
Hi,
Recently I got my hands on a Cavium ThunderX server for some tests
before it is deployed for production. I wanted to install FreeBSD on
it so I grabbed a 12.0 image and was surprised that it didn't work at
all. The beastie menu is displayed, the kernel loaded - and then it
just stops.
As pointed out by Marcel Flores in December
(https://lists.freebsd.org/pipermail/freebsd-arm/2018-December/019130.html),
11.2 does boot to the installer however. Upgrading the system to
11-STABLE worked fine, too. Building 12-STABLE or -CURRENT resulted in
a kernel that wouldn't boot.
I decided to find the point where ThunderX support broke in head. It's
roughly 40,000 commits from the first 12-CURRENT to today. After a few
nights of checking out various old revisions of HEAD and building
kernels over and over again, I found out that in r336520 Emmanuel
Vadot added vt_efifb to the GENERIC kernel config on arm64. According
to his commit message this was tested on PINE64 hardware - but
unfortunately it obviously does not work on ThunderX.
To unbreak HEAD I see basically 3 options:
1) Make the EFI FB work properly on ThunderX. This would certainly be
the best solution but I have no idea whatsoever how to do it.
2) Revert. Probably not a good idea since having vt_efifb included
makes sense on devices where it works. Also reverting a commit from
half a year ago doesn't feel right.
3) Add a THUNDERX config that builds a working kernel and live with
the fact that GENERIC does not support ThunderX for the moment.
I went with the following simple config for all my further tests:
/usr/src/sys/arm64/conf/THUNDERX:
---------------------------------
include GENERIC
ident THUNDERX
nodevice vt_efifb
This makes -CURRENT work again. It does _not_ make 12 (-RELEASE and
-STABLE) work! There's another issue with these that was fixed in HEAD
after 12 was branched off. I chased the problem down, too, but:
Another issue, another mail.
ThunderX is a pretty interesting platform and any help in making
FreeBSD run on it again is very much appreciated.
Any thoughts on this?
Regards,
Michael
More information about the freebsd-arm
mailing list