ACK/cmnt: [SRU][Bionic][PATCH 1/1] UBUNTU: [Config] Enable CONFIG_DRM_BOCHS as module for all archs
Matthew Ruffell
matthew.ruffell at canonical.com
Wed Apr 22 03:28:40 UTC 2020
On 16/04/20 9:28 pm, Kleber Souza wrote:
> This change looks good to me, however I would like to see some test results
> on a ppc64el machine with Bionic before we commit this patch. So we would
> avoid re-spinning the kernel in the future in case this is not really
> fixed on PowerKVM.
>
> Acked-by: Kleber Sacilotto de Souza <kleber.souza at canonical.com>
>
I have verified that enabling the bochs-drm kernel module on bionic does not
cause any regressions for PowerKVM machines when the video device is VGA=std.
TLDR: See Screenshot: https://launchpadlibrarian.net/475658598/Screenshot%20from%202020-04-22%2015-14-13.png
This is in response to the main cause of regression concern, LP #1378648, which
got bochs-drm disabled in the first place, on yakkety.
On Christian's advice, I created a ppc64el instance on Canonistack, with the
m1.medium flavor and c8c120bd-3d55-4e2d-8cc5-93039a62524f image
(ubuntu/ubuntu-bionic-18.04-ppc64el-server-20200407-disk1.img).
>From there, I installed the KVM packages and a xfce4 desktop, and got xrdp
working. I then installed virt-manager.
I modprobed the kvm_pr kernel module on my instance to enable nested kvm on
ppc64el.
>From there, I installed Ubuntu 18.04.4 Server ppc64el, using virt-manager.
The "Machine Type" was pseries-2.12, and the Video Model was set to "VGA" [1].
[1]: https://launchpadlibrarian.net/475658622/Screenshot%20from%202020-04-22%2015-14-04.png
Upon booting, the system was using the Open Firmware frame buffer:
[ 0.888072] Using unsupported 800x600 vga at 200081000000, depth=32, pitch=3200
[ 0.890480] Console: switching to colour frame buffer device 100x37
[ 0.892181] fb0: Open Firmware frame buffer device on /pci at 800000020000000/vga at 6
$ cat /proc/fb
0 OFfb vga
Which is what LP #1378648 wanted.
I then enabled my ppa where my test packages were built:
https://launchpad.net/~mruffell/+archive/ubuntu/sf272653-test
and installed new kmod and 4.15.0-96-generic test builds with bochs-drm enabled
in the kernel config, and removed from the kmod blacklist.
I then rebooted, and found that system boots successfully, and does not get
hung up at the bug in LP #1378648, indicating that it has been fixed before
4.15.
I checked "lsmod" and bochs-drm has been loaded, and looking at dmesg, initially
the Open Firmware frame buffer device is used, and later in the boot, bochs-drm
is loaded, and takes over the frame buffer.
See screenshot [2] for proof that bochs-drm is running and functions correctly
in virt-manager.
[2]: https://launchpadlibrarian.net/475658598/Screenshot%20from%202020-04-22%2015-14-13.png
A complete dmesg from this boot can be found here [3].
[3] https://paste.ubuntu.com/p/Q8V7fKnRzz/
Interesting parts:
[ 0.893046] Using unsupported 800x600 vga at 200081000000, depth=32, pitch=3200
[ 0.895482] Console: switching to colour frame buffer device 100x37
[ 0.897270] fb0: Open Firmware frame buffer device on /pci at 800000020000000/vga at 6
...
[ 2.041835] checking generic (200081000000 1d4c00) vs hw (200081000000 1000000)
[ 2.041836] fb: switching to bochsdrmfb from OFfb vga
[ 2.042568] Console: switching to colour dummy device 80x25
[ 2.045581] [drm] Found bochs VGA, ID 0xb0c5.
[ 2.046100] [drm] Framebuffer size 16384 kB @ 0x200081000000, mmio @ 0x200082000000.
[ 2.058141] [TTM] Zone kernel: Available graphics memory: 504512 kiB
[ 2.058883] [TTM] Initializing pool allocator
[ 2.059372] [TTM] Initializing DMA pool allocator
[ 2.074890] Console: switching to colour frame buffer device 128x48
[ 2.089805] bochs-drm 0000:00:06.0: fb0: bochsdrmfb frame buffer device
[ 2.090549] [drm] Initialized bochs-drm 1.0.0 20130925 for 0000:00:06.0 on minor 0
$ cat /proc/fb
0 bochsdrmfb
With good dmesg outputs, and positive test results in virt-manager, I am happy
to say that enabling bochs-drm will not cause any regressions on ppc64el,
and with that, I hope it satisfies your request for testing.
Thanks,
Matthew
More information about the kernel-team
mailing list