Ubuntu 22.04 で画面が XGA になった ( Intel UHD Graphics 770 の問題をカーネル6系で直す)

Intel UHD Graphics 770 で、最初は Full-HD で使えていたけれども、ある日起動すると XGA になった。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/9f8d0fcf-563f-732d-0c52-f696940543a5.png)

使用しているマザーボードには VGA 、 D端子、 HDMI がついている。


症状が発生する前にも、HDMI に接続すると画面が出ないことがあったり、VGA と HDMI でデュアルディスプレイにしようとしたら ミラーで 800x600 になったりしていた。

# 環境

- Ubuntu 22.04 LTS
- Intel Core i7 13700
- Asus Pro WS 680-ACE




# カーネルをバージョンアップ

XGA で固定されるという問題は nVidea ビデオカードを使用している時に多く発生しているようだ。しかしながら今回は Intel Graphics 。Intel Graphics の事例を調べると以下のようなものがあった。


https://www.reddit.com/r/Ubuntu/comments/10a3pde/intel_i713700k_a780_stuck_at_default_resolution/

同じく Intel UHD Graphics 770 を持つ Intel i7-13700k で同様の問題が起こり、カーネルを6.0 にすると治ったらしい。


当方のカーネルバージョンは

```
$ uname -r
5.15.0-60-generic
```
ということでカーネル6系を入れてみた

```

$ sudo apt-get full-upgrade -y
```
以下のサイトからカーネルの状況を見てみる
https://kernel.ubuntu.com/~kernel-ppa/mainline/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/27b92cb1-3f8f-b9f4-fd40-017439ce9888.png)

気分で v6.4.14 を選ぶ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/df9ae16f-a5f1-2554-6b04-6b31bfbdf492.png)

ここにある、4つの deb パッケージを特定のフォルダにダウンロードし、一気にインストールしてみた。

```
$ sudo dpkg -i *.deb
以前に未選択のパッケージ linux-headers-6.4.14-060414-generic を選択しています。
(データベースを読み込んでいます ... 現在 313382 個のファイルとディレクトリがインストールされています。)
linux-headers-6.4.14-060414-generic_6.4.14-060414.202309020843_amd64.deb を展開する準備をしています ...
linux-headers-6.4.14-060414-generic (6.4.14-060414.202309020843) を展開しています...
以前に未選択のパッケージ linux-headers-6.4.14-060414 を選択しています。
linux-headers-6.4.14-060414_6.4.14-060414.202309020843_all.deb を展開する準備をしています ...
linux-headers-6.4.14-060414 (6.4.14-060414.202309020843) を展開しています...
以前に未選択のパッケージ linux-image-unsigned-6.4.14-060414-generic を選択しています。
linux-image-unsigned-6.4.14-060414-generic_6.4.14-060414.202309020843_amd64.deb を展開する準備をしています ...
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) を展開しています...
以前に未選択のパッケージ linux-modules-6.4.14-060414-generic を選択しています。
linux-modules-6.4.14-060414-generic_6.4.14-060414.202309020843_amd64.deb を展開する準備をしています ...
linux-modules-6.4.14-060414-generic (6.4.14-060414.202309020843) を展開しています...
dpkg: 依存関係の問題により linux-headers-6.4.14-060414-generic の設定ができません:
 linux-headers-6.4.14-060414-generic は以下に依存 (depends) します: libc6 (>= 2.38) ...しかし:
  システム上の libc6:amd64 のバージョンは 2.35-0ubuntu3.1 です。

dpkg: パッケージ linux-headers-6.4.14-060414-generic の処理中にエラーが発生しました (--install):
 依存関係の問題 - 設定を見送ります
linux-headers-6.4.14-060414 (6.4.14-060414.202309020843) を設定しています ...
linux-modules-6.4.14-060414-generic (6.4.14-060414.202309020843) を設定しています ...
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) を設定しています ...
I: /boot/vmlinuz is now a symlink to vmlinuz-6.4.14-060414-generic
I: /boot/initrd.img is now a symlink to initrd.img-6.4.14-060414-generic
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) のトリガを処理しています ...
/etc/kernel/postinst.d/dkms:
 * dkms: running auto installation service for kernel 6.4.14-060414-generic

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
make -j24 KERNELRELEASE=6.4.14-060414-generic -C /lib/modules/6.4.14-060414-generic/build M=/var/lib/dkms/virtualbox/6.1.38/build...(bad exit status: 2)
ERROR (dkms apport): kernel package linux-headers-6.4.14-060414-generic is not supported
Error! Bad return status for module build on kernel: 6.4.14-060414-generic (x86_64)
Consult /var/lib/dkms/virtualbox/6.1.38/build/make.log for more information.
   ...done.
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-6.4.14-060414-generic
/etc/kernel/postinst.d/zz-update-grub:
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.4.14-060414-generic
Found initrd image: /boot/initrd.img-6.4.14-060414-generic
Found linux image: /boot/vmlinuz-5.15.0-60-generic
Found initrd image: /boot/initrd.img-5.15.0-60-generic
Memtest86+ needs a 16-bit boot, that is not available on EFI, exiting
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
処理中にエラーが発生しました:
 linux-headers-6.4.14-060414-generic
```

エラーが発生したものの、initramfs とか UEFI Setting とかなにかやっているようだけれども ・・・?

再起動すると6.4.14がデフォルトになっている。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/5c1aabd3-7b6b-af90-5f68-9024627742db.png)

これを選んでも起動しない。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/c38d0065-3019-294c-cf36-28748869b652.png)

これは Secure Boot の問題で、BIOS の設定を解除すればいいのだが気持ちが悪いので 5.15.0-60-generic で起動し直し、アンインストールした。


```
$ sudo dpkg -r linux-modules-6.4.14-060414-generic linux-headers-6.4.14-060414-generic linux-headers-6.4.14-060414 linux-image-unsigned-6.4.14-060414-generic
```


# ppa でインストール


```
$ sudo add-apt-repository ppa:cappelikan/ppa
$ sudo apt update
$ sudo apt install mainline 
```

リストを見てみる

```
$ sudo mainline list
```

とすると

```
mainline 1.4.8
Updating Kernels...
----------------------------------------------------------------      
Available Kernels
----------------------------------------------------------------
6.5.1                      
6.5                        
6.4.14          Installed  
6.4.13                     
6.4.12                     
6.4.11                     
6.4.10                     
6.4.9                      
6.4.8                      
.
.
.
6.0.8                      
6.0.7                      
6.0.6                      
6.0.5                      
6.0.4                      
6.0.3                      
6.0.1                      
6.0                        
5.19.17                    
5.19.16                    
5.19.15                    
5.19.13                    
5.19.11                    
5.19.10                    
5.19.9                     
5.19.8                     
5.19.5                     
5.19.0-38.39~22.04.1    Installed  
5.19.0-35.36~22.04.1    Installed  
5.19.0-32.33~22.04.1    Installed  
5.19                       
5.18.19                    
5.18.17                    
5.18.15     
.
.
.
```

うーむ 6.4.14 が依然として Installed になっている。

mainline からも uninstall してみると・・・
```

$ sudo mainline uninstall 6.4.14
mainline 1.4.8
Updating Kernels...
Uninstalling 6.4.14
(データベースを読み込んでいます ... 現在 313478 個のファイルとディレクトリがインストールされています。)
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) の設定ファイルを削除しています ...
linux-modules-6.4.14-060414-generic (6.4.14-060414.202309020843) の設定ファイルを削除しています ...
mainline: done
nanbuwks@nanbuwks-B550M-S2H:~$ sudo mainline list
mainline 1.4.8
Updating Kernels...
----------------------------------------------------------------
Available Kernels
----------------------------------------------------------------
6.5.1                      
6.5                        
6.4.14                     
6.4.13                     
6.4.12                     
6.4.11                     
6.4.10                     
6.4.9 
.
.
.
```
うまく消えたようです。

再度、6.4.14 を mainline でインストールしてみます。

```
$ sudo mainline install 6.4.14
mainline 1.4.8
Updating Kernels...
Downloading 6.4.14
Installing 6.4.14                                                     
以前に未選択のパッケージ linux-headers-6.4.14-060414-generic を選択しています。
(データベースを読み込んでいます ... 現在 313477 個のファイルとディレクトリがインストールされています。)
.../linux-headers-6.4.14-060414-generic_6.4.14-060414.202309020843_amd64.deb を展開する準備をしています ...
linux-headers-6.4.14-060414-generic (6.4.14-060414.202309020843) を展開しています...
以前に未選択のパッケージ linux-headers-6.4.14-060414 を選択しています。
.../linux-headers-6.4.14-060414_6.4.14-060414.202309020843_all.deb を展開する準備をしています ...
linux-headers-6.4.14-060414 (6.4.14-060414.202309020843) を展開しています...
以前に未選択のパッケージ linux-image-unsigned-6.4.14-060414-generic を選択しています。
.../linux-image-unsigned-6.4.14-060414-generic_6.4.14-060414.202309020843_amd64.deb を展開する準備をしています ...
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) を展開しています...
以前に未選択のパッケージ linux-modules-6.4.14-060414-generic を選択しています。
.../linux-modules-6.4.14-060414-generic_6.4.14-060414.202309020843_amd64.deb を展開する準備をしています ...
linux-modules-6.4.14-060414-generic (6.4.14-060414.202309020843) を展開しています...
dpkg: 依存関係の問題により linux-headers-6.4.14-060414-generic の設定ができません:
 linux-headers-6.4.14-060414-generic は以下に依存 (depends) します: libc6 (>= 2.38) ...しかし:
  システム上の libc6:amd64 のバージョンは 2.35-0ubuntu3.1 です。

dpkg: パッケージ linux-headers-6.4.14-060414-generic の処理中にエラーが発生しました (--install):
 依存関係の問題 - 設定を見送ります
linux-headers-6.4.14-060414 (6.4.14-060414.202309020843) を設定しています ...
linux-modules-6.4.14-060414-generic (6.4.14-060414.202309020843) を設定しています ...
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) を設定しています ...
I: /boot/vmlinuz is now a symlink to vmlinuz-6.4.14-060414-generic
I: /boot/initrd.img is now a symlink to initrd.img-6.4.14-060414-generic
linux-image-unsigned-6.4.14-060414-generic (6.4.14-060414.202309020843) のトリガを処理しています ...
/etc/kernel/postinst.d/dkms:
 * dkms: running auto installation service for kernel 6.4.14-060414-generic

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
make -j24 KERNELRELEASE=6.4.14-060414-generic -C /lib/modules/6.4.14-060414-generic/build M=/var/lib/dkms/virtualbox/6.1.38/build...(bad exit status: 2)
ERROR (dkms apport): kernel package linux-headers-6.4.14-060414-generic is not supported
Error! Bad return status for module build on kernel: 6.4.14-060414-generic (x86_64)
Consult /var/lib/dkms/virtualbox/6.1.38/build/make.log for more information.
   ...done.
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-6.4.14-060414-generic
/etc/kernel/postinst.d/zz-update-grub:
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.4.14-060414-generic
Found initrd image: /boot/initrd.img-6.4.14-060414-generic
Found linux image: /boot/vmlinuz-5.15.0-60-generic
Found initrd image: /boot/initrd.img-5.15.0-60-generic
Memtest86+ needs a 16-bit boot, that is not available on EFI, exiting
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
処理中にエラーが発生しました:
 linux-headers-6.4.14-060414-generic
mainline: done
```
うーん、同じですね。アンインストールして、6.3.13で試してみました。

```
$ sudo mainline install 6.3.13
```
今度はエラーなくインストールできました。

# 解決

再起動するとFullHD の画面として認識されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/e54b23a7-58cd-3358-77f9-40d3234fc3a1.png)

デュアルディスプレイや、ホットプラグなども問題なく動作しているようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/193cf1de-182b-2e56-aaa3-091f4c5e677c.png)