On Thu, Jun 30, 2022 at 08:52:33AM +0200, Hrvoje Popovski wrote:
> On 27.6.2022. 23:44, Mark Kettenis wrote:
> > The Ryzen Embedded V1000 processors have an arm64-style Synposys
> > DesignWare UART instead if a PC-compatible NS16x50 UART. To make this
> > UART work as a serial console, we need to pass some more information
> > from the bootloader to the kernel. This diff adds the logic to handle
> > that information to the kernel. I'd like some folks that use a serial
> > console on their amd64 machines to test this. But testing this diff
> > on amd64 machines with a glass console doesn't hurt.
> >
> > Thanks,
> >
> > Mark
>
>
> Hi,
>
> I've sysupgrade few boxes few minutes ago and booting output is quite
> slow. Everything is working but console output needs cca 2 or 3 minutes
> to finish depends how big is dmesg.
>
> I have few console over ipmi and few connected to serial and all of them
> are slow.
>
> When boot output finish working over console backs to normal fast output.
I would guess the problem arises after running installboot causing the
new bios_consdev_t structure to be used, whereas only the fields in the
old bios_oconsdev_t structure are populated? Maybe the rename should
have been the other way around until the new structure is populated.
This makes the boot output "fast" again on my machine. I missed
installboot while testing the original diff.
diff --git sys/arch/amd64/stand/libsa/exec_i386.c
sys/arch/amd64/stand/libsa/exec_i386.c
index 22067931829..25d20d359c0 100644
--- sys/arch/amd64/stand/libsa/exec_i386.c
+++ sys/arch/amd64/stand/libsa/exec_i386.c
@@ -91,7 +91,7 @@ run_loadfile(uint64_t *marks, int howto)
dev_t bootdev = bootdev_dip->bootdev;
size_t ac = BOOTARG_LEN;
caddr_t av = (caddr_t)BOOTARG_OFF;
- bios_consdev_t cd;
+ bios_oconsdev_t cd;
extern int com_speed; /* from bioscons.c */
extern int com_addr;
bios_ddb_t ddb;