** Changed in: linux (Ubuntu)
Status: New => Invalid
** Changed in: linux (Ubuntu Noble)
Importance: Undecided => Medium
** Changed in: linux (Ubuntu Noble)
Status: In Progress => Fix Committed
--
You received this bug notification because you are subscribed to linux
in Ubuntu.
Matching subscriptions: Bgg, Bmail, Nb
https://bugs.launchpad.net/bugs/2127971
Title:
Ubuntu x86_64 6.8 kernels won't build if CONFIG_FB_HYPERV config
option is enabled
Status in linux package in Ubuntu:
Invalid
Status in linux source package in Noble:
Fix Committed
Bug description:
SRU template
[ Impact ]
Ubuntu x86_64 6.8 kernels won't build if CONFIG_FB_HYPERV config option is enabled (m/y). The build process fails with the following error:
drivers/video/fbdev/hyperv_fb.c: In function 'hvfb_probe':
drivers/video/fbdev/hyperv_fb.c:1195:15: error: implicit declaration of function 'devm_register_framebuffer'; did you mean 'unregister_framebuffer'? [-Werror=implicit-function-declaration]
1195 | ret = devm_register_framebuffer(&hdev->device, info);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| unregister_framebuffer
CC lib/objpool.o
CC [M] sound/pci/emu10k1/io.o
cc1: some warnings being treated as errors
make[5]: *** [scripts/Makefile.build:243: drivers/video/fbdev/hyperv_fb.o] Error 1
make[4]: *** [scripts/Makefile.build:481: drivers/video/fbdev] Error 2
make[3]: *** [scripts/Makefile.build:481: drivers/video] Error 2
make[2]: *** [scripts/Makefile.build:481: drivers] Error 2
The reason is that in the 6.8 Ubuntu kernel source, commit
f26c2008d5bd6d (cherry pick from upstream ea2f45ab0e53b255) introduced
call to 'devm_register_framebuffer', but there is missing an upstream
commit 929c81ade6355b, which provides the implementation for
'devm_register_framebuffer'. This SRU adds the missing upstream commit
929c81ade6355b to the 6.8 Ubuntu kernel source.
This issue hasn't been noticed because, by default, the CONFIG_FB_HYPERV is disabled for Ubuntu kernel builds:
./debian/scripts/misc/annotations --query --config CONFIG_FB_HYPERV
{
"CONFIG_FB_HYPERV": {
"policy": {
"amd64": "n",
"arm64": "n"
}
}
}
[ Test Plan ]
With the patch applied to the Noble kernel source:
1. enable the CONFIG_FB_HYPERV
echo 'CONFIG_FB_HYPERV=m' > ~/test-config
./debian/scripts/misc/annotations --arch amd64 --flavour generic --update ~/test-config
2. clean and confirm the change
fakeroot debian/rules clean updateconfigs
./debian/scripts/misc/annotations --query --config CONFIG_FB_HYPERV
3. build the kernel
fakeroot debian/rules clean binary-generic
The kernel will build without any errors. Without the patch, it would
fail with the aforementioned error.
[ Where problems could occur]
Regression risk is low because:
1. Impact is limited to the builds (and kernels built) with CONFIG_FB_HYPERV enabled. This option is disabled by default for Ubuntu.
2. The patch has already landed in more recent Ubuntu kernels, ie 6.14 HWE, and it's been there for a while:
git branch -a --contains 929c81ade6355b
contains
remotes/origin/hwe-6.14-next
remotes/origin/hwe-6.14-next--2025.06.16-1--auto
remotes/origin/hwe-6.14-next--2025.06.16-3--auto
remotes/origin/hwe-6.14-next--2025.06.16-6--auto
remotes/origin/hwe-6.14-next--2025.07.14-1--auto
remotes/origin/hwe-6.14-next--2025.07.14-3--auto
remotes/origin/hwe-6.14-next--2025.08.11-1--auto
remotes/origin/hwe-6.14-next--2025.09.15-1--auto
remotes/origin/hwe-6.14-next--2025.10.13-1--auto
remotes/origin/hwe-6.14-next--s2025.05.19-1--auto
remotes/origin/hwe-6.14-next--s2025.06.16-1--auto
remotes/origin/hwe-6.14-next--s2025.06.16-3--auto
remotes/origin/hwe-6.14-next--s2025.07.14-1--auto
remotes/origin/hwe-6.14-next--s2025.08.11-1--auto
remotes/origin/hwe-6.14-next--s2025.09.15-1--auto
[ Other Info ]
The problem was identified by a Customer who rebuils the Bluefield [1]
kernel for x86_64 with the CONFIG_FB_HYPERV enabled.
[1] https://git.launchpad.net/~canonical-kernel-
bluefield/ubuntu/+source/linux-bluefield/+git/noble
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2127971/+subscriptions
Комментариев нет:
Отправить комментарий