23.05.1 GUI Update to 23.09 BTX Halted on reboot
-
I have a HP T740 that was running 23.05.1 with no issues until yesterday when I tried to update to 23.09. I have 4 packages installed, Acme, Snort, pfBlocker-ng, and Bandwidthd. Only config change I have made recently is changing to Kea DHCP as recommended by the notice in the GUI. I have reinstalled 2.7.0 multiple times since yesterday. This unit requires two uart hints to be disabled to boot from the install media and on the first boot after install. The first reboot after the update was downloaded and queued ended with this output "BIOS drive C: is disk0 BBBBBBBBBBBBBBB(repeating for about a minute and a half) and BTX halted. I can perform rescue installs and bring the device to a running state. If I reboot with the reroot everything works as expected. Rebooting with a full reboot option BTX halted occurs again. I have tried GPT BIOS, GPT UEFI, and MBR with the default ZFS selection. All ending with the same result. This unit does not have the serial addon expansion and I see no option to disable it in the bios as was suggested years ago in another post referencing a HP server. Thoughts? Ideas? Shoulder shrugs?
Thanks
-
@veritech said in 23.05.1 GUI Update to 23.09 BTX Halted on reboot:
This unit requires two uart hints to be disabled to boot from the install media and on the first boot after install.
What are those things?
Do you see the failure after upgrading to 23.05.1 or 2.7.1?
-
When booting from the memstick VGA installer, if no boot options are set you will get the following error:
atkbd0: [GIANT-LOCKED]
This, from my searching, is a FreeBSD error. issuing the following commands as boot options (once you see the numbered menu screen for pFsense and pressing a key)
unset hint.uart.0.at
unset hint.uart.1.at
bootThe installer will boot successfully and install pFsense with the settings you choose. There are two options once the install is completed, create the loader.conf.local file before rebooting to finalize the install or interrupt the boot and issue the unset commands then create the loader.conf.local file with the following entries:
hint.uart.0.disabled="1"
hint.uart.1.disabled="1"The .local file allows these settings to survive OS updates and the like.
This has worked well for months as I rebooted and configured the system multiple times all with no issues. I requested the homelab Plus option as well in the beginning. I have not tried to upgrade to the RC 2.7.1 to test yet and will be doing so this weekend. The failure now exists at every boot after the initial install. This leads me to think it may be related to the Kea DHCP option. I can't test until I get 2.7.0 back to 23.05.1 and switch back to the standard DHCP service.
-
Hmm, that's not an error and should not prevent it booting though.
So you have only seen the bootloader issue after upgrading to 23.09?
Have you tried installing 2.7.1 directly?
-
Right after attempting the first upgrade to 23.09 and every install and second reboot once installed and packages are restored since then. I’ll back up the package configs, remove them, and do a format on the drive just in case some weirdness is left over. I’ll try 2.7.1 soon as the memstick image is available on the website. As long as I don’t lose power it will work fine sitting there.
.:edit:. I see it’s there now, I’ll be able to test after work tomorrow.
-
Had some honey do lists get in the way, sorry for the delayed response. I attempted a WebUI update to 2.7.1 from 2.7.0 and same issue. Recovered config and reinstalled 2.7.1. Reroot is fine will be testing reboot once my wife is in bed.
-
Full reboot is still showing the BTX halted error. Although, it is no longer showing the repeating "B".
-
Hmm, that looks like it dumped the registers as it does with a panic. I've not seen that before.
-
There is a BIOS update for the T740. I doubt it is a BIOS issue but it could be based on the 15-20 year old posts I have found concerning BTX halts and previous versions of FreeBSD. I'll update that this evening and see what happens. I was also able to edit my install USB to include the loader.conf edits for the uart hints I need. Out of curiosity, is there an option I can add to the default install script on the USB stick? I haven't found anything but running scripts after installing pfsense. I'd only be adding the creation of the loader.conf.local file to streamline my reinstalls for testing. Thanks for looking over my issue so far.
-
Not easily. The filesystem on the USB installer is UFS so you'd need to open it in something that can read/write that.
-
I'm not too familiar with FreeBSD cli operations. I created a GhostBSD VM and attached the installer USB to it. I had to use the terminal and sudo vi to edit the loader.conf with the boot flags. This is the only file I edited. I looked around to see if I could find a setup script or something that seemed to be a setup instruction set but didn't want to muck around unless I knew which file it is. Is there a way to include the loader.conf.local in the config when it is restored?
-
You could potentially add it using the filer package. But that would only be added back after the package is reinstalled and it's config applied. So it wouldn't help at first boot after a restore.
-
No the installer only adds custom loader values for specifically recognised devices. There's no scope for adding something custom to the USB drive. That could be an interesting feature though.
-
Today I was able to troubleshoot my T740. End result is I am back on pfSense Plus version 23.09.1. I noticed the 2.7.2 update was offered in the WebUI. I confirmed the update install, BTX halted as usual. I decided to replace the boot drive from a SATA M.2 to a NVMe M.2 and remove the original eMMC card while I had the system open (eMMC has never been used for the OS install). My previous USB file edit worked and it booted into the installer right away. Since both BIOS and UEFI were broken previously I installed the OS for UEFI to test first. Install found my config.xml, applied the settings for ZFS to match the old drive, created the loader.conf.local file, and rebooted. No boot device found.... I forgot to enable UEFI in the BIOS so I enabled that and it booted into pfSense, I was excited so I immediately confirmed the update to 2.7.2 (before my packages were reinstalled automatically) and it installed and rebooted successfully. I then reapplied the Plus license my system was granted and rebooted again. All working now so far. I have only reinstalled acme and pfBlocker-NG and all seem well. I'll continue to see if I can get the loader.conf.local file to be applied/created during or right after setup, in a VM of course.