Date: Wed, 4 Dec 2024 12:51:37 -0800 From: Steve Rikli <sr@genyosha.net> To: Dan Langille <dan@langille.org> Cc: FreeBSD Mailing List <freebsd-questions@freebsd.org> Subject: Re: 14.1 hosts booting off EFI: boot menu appears but cannot interact Message-ID: <Z1DA2fBu1CQ5soFO@dragon.home.genyosha.net> In-Reply-To: <82e4fa9c-2640-40d7-a3f7-0557fe507b90@app.fastmail.com> References: <82e4fa9c-2640-40d7-a3f7-0557fe507b90@app.fastmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Dec 04, 2024 at 02:42:22PM -0500, Dan Langille wrote: > We have multiple FreeBSD 14.1 hosts booting off EFI partitions on Cisco hosts (UCS C240 M7SX). > > We are accessing the hosts via the KVM provided by the CIMC (Cisco Integrated Management Controller) of the host (I'd call that IPMI). We are running the latest CIMC firmware. > > We are unable to get into single user mode because the keyboard is ignored during the splash screen countdown. > > During the autoboot process, when the splash screen appears (with the options to go into single user mode, boot options, etc), we are unable to select any of those options, the countdown hits zero and the usual boot proceeds. We want, and can't get into, single user mode. During the countdown, the entire keyboard is not functional (e.g. with pressing space, 1, 2, etc). > > We have tried both the keyboard on our client and the virtual keyboard. Presumably USB keyboard in both cases? (physical or virtual) It's been a bit since I last touched a C240 -- do yours have PS/2 keyboard port? > Once the boot process completes, the keyboard access is as expected. > > We have tried console="comconsole,efi" in /boot/loader.conf - no help Only curious: does the serial console respond normally? I.e. with boot output, and interaction with the boot menu, single-user, etc? I have a Lenovo m920q, so obviously different hardware than your C240, running FreeBSD 14.2 and EFI. Keyboard/video is physical USB and DP ports rather than CIMC/BMC. With USB keyboard (and mouse, though fwiw keyboard alone is sufficient) attached, it won't boot single-user from the menu. It apparently gets stuck probing the USB controller, judging from last messages on display. Somewhat different behavior from your C240, because I can at least input to the menu from there. With USB keyboard disconnected and driving from serial console, the menu is active, boots single-user, boots normally etc. as expected. Driving from USB keyboard, the system can interact with the boot menu, boot normally, login after boot, etc. But not boot single-user. > We can ssh into the CIMC. When reviewing the Cisco documentation, we don't see any configuration items related to screen interaction / mouse / USB. > > While typing this up, we have discovered a workaround: setting autoboot_delay="NO" in /boot/loader.conf results in an active keyboard. We can then go into single user mode. However, to make that configuration chagne, we had to boot from a live-cd, import the zpool, mount, modify the file, etc. Ideally, we'd prefer single user mode like decent people. > > However, this workaround prevents the autobooting of the host. It allows us to fix the problem at the expense of needing to go the console and select an option after every boot. > > In short, if we don't pause the server during, we don't get any keyboard interaction. Since my system is nearly always driven from serial console and has no BMC devices for remote access, this isn't a huge problem for me and I've not pursued it further. However, it's on my todo list to check out things like atkbd(4) and maybe experiment with device.hints(5) settings e.g. hint.atkbd, BIOS settings for possible USB modes, etc. ISTR other folks reporting similar problems with single-user and USB keyboard in the past. I'd also be curious if 'console="comconsole,vidconsole"' changes any behavior. Fwiw today I use these: boot_multicons="YES" boot_serial="YES" comconsole_speed="115200" console="comconsole,efi" Cheers, sr.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Z1DA2fBu1CQ5soFO>