Hi Andreas,
On Mon Dec 14, 2020 at 15:35:08 -0800, Andreas Steinmetzler wrote:
in some experiments I'm trying to run Fiasco/L4re on a Aaeon FWS2360 (https://www.aaeon.com/en/p/desktop-network-appliance-fws-2360) with an Intel Atom C3558. Unfortunately Fiasco gets stuck on boot when trying to start the different cores of the processor (I'm using the latest published l4re-snapshot-20.10.0). For this test I'm using the "hello world" ISO build with this command
make E=hello grub2iso MODULE_SEARCH_PATH="${PWD}/../build-fiasco-amd64"
The ISO image boots fine on another amd64 system. After adding some printf()'s to the file kernel_thread-ia32.cpp it looks to me that things get stuck with this call:
// Send IPI-Sequency to startup the APs Apic::mp_startup(Cpu::boot_cpu(), Apic::APIC_IPI_OTHERS, tramp_page);
as it does not return anymore ... any hint how to debug this or drill down to get more information and the AtomC3558 system to boot?
The first thing I'd check is whether it runs on a single core only at least (i.e. commenting out the mp_startup call)? Then it's probably good diving into mp_startup to see at which point therein it is hanging. Then we'll see whether this tells us something.
Thanks, Adam