Page MenuHomeVyOS Platform

Console is slugish
Closed, ResolvedPublic

Description

1.2.0-rc9 enabled CONFIG_FB_VGA16=y in the kernel. This made the console (in Virtualbox at least) much slower. This can be measured as the boot time to the login prompt on rc9 being ~50s, while the same time on rc8 is ~30s.

@LiquidLight also pointed out in the Slack: "another thing that might be related to the console change, getting a screenshot from an ec2 instance no longer works with rc9"

Details

Difficulty level
Unknown (require assessment)
Version
1.2.0-rc9
Why the issue appeared?
Will be filled on close

Event Timeline

frolswe created this task.Nov 28 2018, 8:06 AM
frolswe created this object in space S1 VyOS Public.
c-po added a subscriber: c-po.EditedNov 28 2018, 8:17 AM

System bootup time is something we should not care, as a router is not rebootet that often. Infact the startup time depends on the amount of configured services or firewall rules. We recently increased the timeout for starting of VyOS to also make it work on slower Intel Atom D525 platforms where a huge firewall config was loaded.

I doubt that this change has something to do with it, but the overall kernel configuration changed - but has already been reverted and is in the latest rolling release.

Config revert was necessary as my changes to support the Intel Atom C3000 EFI boot seemed to introduced weird issues when running the image with my cloud provider. So basically rolling release now runs the rc8 Kernel configuration again, but uses Kernel 4.19.4 instead of 4.19.0

What is your hardware setup? Was it booting faster before? What is your running configuration?

The problem is not the boot time per se, it is the slowness of the console.

I have tried both the vyos-1.2.0-rolling+201811271538-amd64.iso you linked yesterday and the most recent one, vyos-1.2.0-rolling%2B201811280337-amd64.iso. They are both still slow. And they both contain CONFIG_FB_VGA16=y which rc8 does not.

My test is quite simple:

  1. Create a new vm in Virtualbox.
  2. Boot the iso and observe the console window.

Both of the rolling releases changes the console to a graphical frame buffer half way into the boot process. After this change the console is updated noticeably slower. The rc8 does not do this change, and keeps updating quickly. This is the reason I suspect the frame buffer, but I do not know if it is some other change that is the actual reason.

c-po changed the task status from Open to In progress.Nov 28 2018, 1:45 PM
c-po claimed this task.
c-po edited projects, added VyOS 1.2 Crux (VyOS 1.2.0-rc10); removed VyOS 1.2 Crux.
c-po added a comment.Nov 28 2018, 2:51 PM

Can you please double-check with latest rolling release: vyos-1.2.0-rolling+201811281529-amd64.iso?

Will just setting it to =n solve the problem?

c-po added a comment.Nov 29 2018, 4:36 AM

@dmbaturin maybe can, need to verify this behavior together with the EFI stuff when I'm back in germany. If =n works for all szenarios I'm happy with it.

vyos-1.2.0-rolling+201811281529-amd64.iso works good for me. And it has CONFIG_FB_VGA16=m same as rc8.

Thanks. Hopefully it will not break your efi stuff?
/Fredrik

syncer triaged this task as Normal priority.Nov 30 2018, 4:38 PM
syncer moved this task from Needs Triage to In Progress on the VyOS 1.2 Crux (VyOS 1.2.0-rc10) board.

And in rc10 it is back to being sluggish with CONFIG_FB_VGA16=y :(

Summarize

The console in my Virtualbox setup is slower when VGA16FB is used. Everything producing much output on the console will run slower, regardless if anyone is actually watching the console. Since the boot process produces much output, the system will boot slower, but the problem is not limited to the boot process.

  • Does anyone actually need a graphical frame buffer for Vyos? I would expect it to run mostly headless.
  • Is the frame buffer tied to or necessary to solve the EFI issues @c-po raised?

Solutions

  1. Keep CONFIG_FB_VGA16=y and I will fix my scripts.
  2. CONFIG_FB_VGA16=m (or n) if it is not actually needed.
  3. CONFIG_FB_VGA16=m and add a script to the initrd to enable the module for systems where it is needed.

Can I do anything else to help you decide on a solution? Was it only a simple mistake sneaking the config setting back into rc10?

c-po added a comment.Dec 10 2018, 6:47 AM

Disabling the complete Framebuffer subsystem works with my UEFI Testboard, too. I will drop it entirely

c-po added a comment.Dec 10 2018, 8:02 AM

My changes will make it into rc12 as earliest, sorry

pasik added a subscriber: pasik.Dec 16 2018, 11:24 AM
c-po added a comment.Jan 2 2019, 6:59 AM

CONFIG_FB_VGA16 has been removed from the kernel co fig and thus this should be resolved. Can you please retest with latest rolling?

I tested vyos-1.2.0-rolling+201901070337-amd64.iso and it works OK for me :)
Thanks

syncer closed this task as Resolved.Jan 12 2019, 7:24 PM
syncer moved this task from Needs Triage to Finished on the VyOS 1.2 Crux (VyOS 1.2.0-EPA3) board.