> From: kiltz <ki...@iti.cs.uni-magdeburg.de> > Date: Mon, 13 Jun 2022 14:46:39 +0200
Hi Stefan, > Dear kind people at OpenBSD.org, > we want to run OpenBSD as a firewall system on a Gigabyte R152_P30 > with the following specifications: > > Ampere Altra Q80-33 processor (80 Cores, 3,3 GHz) > 512 GB RAM (3200 MHz ECC-reg.) > 2 x 480 GB SSD SATA 6 Gb/s 2,5'' > Dual-Port 1 GbE (RJ-45) > IPMI 2.0 Baseboard Management Controller (BMC) > 1 x PCIe4.0 x16 (FHHL) > 1 x PCIe3.0 x16 OCP2.0 (belegt) > 1 x USB 3.0 (front), 3 x USB 3.0 (rear), 1 x VGA (rear) > > We tried both: > - official stable 7.1 (/pub/OpenBSD/7.1/arm64) and > - snapshot from 6th of June 2022 (/pub/OpenBSD/snapshots/arm64) > > The repeatable result is a working install in single CPU/Core > installation mode, cpu panic after first reboot with mp kernel. We use > the serial to LAN console provided by the IMPI/BMC card. > Attached you will find screenshots from: > > - the last 49 columns of the reboot into mp kernel > (Screenshot_boot_after_install_Gigabyte_R152_P30 at 2022-06-13 > 13-51-00.png), > - the ddb trace output (Screenshot ddb_trace_2022-06-13 14-02-11.png), > - the ddb ps output (Screenshot ddb_ps_at 2022-06-13 14-03-25.png), > - the ddb show panic output (Screenshot ddb_show_panic_at 2022-06-13 > 14-04-28.png) > - the ddb show registers output (Screenshot ddb_show_registers_at > 2022-06-13 14-06-34.png) > > Due to the nature of the early boot panic, the kernel output is not > accessible to us. > > Interestingly, FreeBSD only supports them in their current release, > the stable fails with a similar panic. They seem to have found a fix > of sorts. But we very much prefer OpenBSD for the firewalling role of > aforementioned system. > > Of course we support your effort so if you need more info from us > regarding the circumstances, we will happily try and supply the > required information. The immediate problem is that OpenBSD currently supports a maximum of 32 CPUs. That limit is a bit arbitrary, so the diff below bumps it to 128. You could try building a GENERIC.MP kernel with this diff after booting the GENERIC (bsd.sp) single-processor kernel. I'll see what my fellow developers think abut bumping MAXCPUS. Depending on the outcome of that a snapshot with this change may be available in a few days. I'm not sure how well OpenBSD/arm64 scales to 80 CPUs. Probably not very well but I guess there is only one way to find out... Cheers, Mark Index: arch/arm64/include/cpu.h =================================================================== RCS file: /cvs/src/sys/arch/arm64/include/cpu.h,v retrieving revision 1.25 diff -u -p -r1.25 cpu.h --- arch/arm64/include/cpu.h 23 Mar 2022 23:36:35 -0000 1.25 +++ arch/arm64/include/cpu.h 13 Jun 2022 15:09:32 -0000 @@ -184,7 +184,7 @@ extern struct cpu_info *cpu_info_list; #define CPU_INFO_FOREACH(cii, ci) for (cii = 0, ci = cpu_info_list; \ ci != NULL; ci = ci->ci_next) #define CPU_INFO_UNIT(ci) ((ci)->ci_dev ? (ci)->ci_dev->dv_unit : 0) -#define MAXCPUS 32 +#define MAXCPUS 128 extern struct cpu_info *cpu_info[MAXCPUS];