Virt-Manager上のOpenBSD 7.6の解像度が高すぎる

Virt-Manager上のOpenBSD 7.6 amd64ですが,ディスプレイ解像度が妙に高く使いづらいです.ホストよりも広く2024×2024もあります.
Xだけならxorgの設定でどうにでもなりそうですが,その前のフレームバッファコンソールの時点から高く使いづらい.
調べて修正してみました.

$ dmesg | grep ^efifb0
efifb0 at mainbus0: 2048x2048, 32bpp

マニュアルの以下の部分を見るとamd64のUEFI環境だとbootプロンプト上で machine gop で解像度を確認したり設定できるようです.確認してみます.

gop [mode]
On efifb(4) systems, sets the video resolution in pixels to mode. If mode is not given, a list of available modes is shown.

— BOOT(8) System Manager’s Manual (amd64)
https://man.openbsd.org/amd64/boot.conf#gop 🏛️
>> OpenBSD/amd64 BOOTX64 3.67
boot> machine gop
Mode 0: 640 x 480 (stride = 640)
Mode 1: 800 x 480 (stride = 800)
Mode 2: 800 x 600 (stride = 800)
Mode 3: 832 x 624 (stride = 832)
Mode 4: 960 x 640 (stride = 960)
Mode 5: 1024 x 600 (stride = 1024)
Mode 6: 1024 x 768 (stride = 1024)
Mode 7: 1152 x 864 (stride = 1152)
Mode 8: 1152 x 870 (stride = 1152)
Mode 9: 1280 x 720 (stride = 1280)
Mode 10: 1280 x 760 (stride = 1280)
Mode 11: 1280 x 768 (stride = 1280)
Mode 12: 1280 x 800 (stride = 1280)
Mode 13: 1280 x 960 (stride = 1280)
Mode 14: 1280 x 1024 (stride = 1280)
Mode 15: 1360 x 768 (stride = 1360)
Mode 16: 1366 x 768 (stride = 1366)
Mode 17: 1400 x 1050 (stride = 1400)
Mode 18: 1440 x 900 (stride = 1440)
Mode 19: 1600 x 900 (stride = 1600)
Mode 20: 1600 x 1200 (stride = 1600)
Mode 21: 1680 x 1050 (stride = 1680)
Mode 22: 1920 x 1080 (stride = 1920)
Mode 23: 1920 x 1200 (stride = 1920)
Mode 24: 1920 x 1440 (stride = 1920)
Mode 25: 2000 x 2000 (stride = 2000)
Mode 26: 2048 x 1536 (stride = 2048)
Mode 27: 2048 x 2048 (stride = 2048)
Mode 28: 2560 x 1440 (stride = 2560)
Mode 29: 2560 x 1600 (stride = 2560)

Current Mode = 12

640×480〜2560×1600まで選べて,現在は12の1280×800ということになっています.
Mode 27になっていそうなんだけどなと思いつつ明示的に12を指定して起動すると,

boot> machine gop 12
Current Mode = 12

期待したとおり1280×800になりました.

$ grep efifb0\ at /var/log/messages | tail -2
Nov  2 18:36:01 fugu /bsd: efifb0 at mainbus0: 2048x2048, 32bpp
Nov  2 18:46:43 fugu /bsd: efifb0 at mainbus0: 1280x800, 32bpp

しかしこれはアドホックな手順で,再起動すると2048×2048に戻ってしまいました.

/etc/boot.confに書いておきます.変わったのがわかるように今回はMode 9を指定しました.

$ echo machine gop 9 | doas tee -a /etc/boot.conf

これで再起動するとMode 9の1280×720で起動してきました.

$ dmesg | grep ^efifb0 | tail -1
efifb0 at mainbus0: 1280x720, 32bpp
環境
fugu$ ./pfetch
      _____       matoken@fugu.my.domain
    \-     -/     os     OpenBSD 7.6
 \_/         \    host   pc-i440fx-9.1
 |        O O |   uptime 9m
 |_  <   )  3 )   pkgs   75
 / \         /    memory 53M / 224M
    /-_____-\
ホスト環境
$ dpkg-query -W virt-manager libvirt-clients libvirt-daemon qemu-user qemu-system-x86
libvirt-clients 10.8.0-1
libvirt-daemon  10.8.0-1
qemu-system-x86 1:9.1.1+ds-2
qemu-user       1:9.1.1+ds-2
virt-manager    1:4.1.0-4
$ /sbin/modinfo kvm_intel | head -1
filename:       /lib/modules/6.11.5-amd64/kernel/arch/x86/kvm/kvm-intel.ko.xz
$ lsb_release -dr
Description:    Debian GNU/Linux trixie/sid
Release:        n/a
$ arch
x86_64

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)