From e5bb7425e5bae76c8950089a946edcba3e0540ab Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Wed, 26 Feb 2014 11:51:25 +0100 Subject: hyperv-fb: kick off efifb early Remove firmware framebuffer before initializing hyperv-fb. Needed on gen2 virtual machines. Letting register_framebuffer handle the switchover results in efifb still being active while hyperv graphics are initialized, which in turn can make the linux kernel hang. Signed-off-by: Gerd Hoffmann Signed-off-by: Haiyang Zhang Acked-by: Tomi Valkeinen Signed-off-by: Greg Kroah-Hartman --- drivers/video/hyperv_fb.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/video/hyperv_fb.c b/drivers/video/hyperv_fb.c index b7b3dd0ab675..e23392ec5af3 100644 --- a/drivers/video/hyperv_fb.c +++ b/drivers/video/hyperv_fb.c @@ -679,6 +679,8 @@ static int hvfb_getmem(struct fb_info *info) if (gen2vm) { info->apertures->ranges[0].base = screen_info.lfb_base; info->apertures->ranges[0].size = screen_info.lfb_size; + remove_conflicting_framebuffers(info->apertures, + KBUILD_MODNAME, false); } else { info->apertures->ranges[0].base = pci_resource_start(pdev, 0); info->apertures->ranges[0].size = pci_resource_len(pdev, 0); -- cgit v1.2.3