RE: [PATCH v4 2/2] hyperv-fb: kick off efifb early

From: Haiyang Zhang
Date: Tue Feb 25 2014 - 10:51:36 EST




> -----Original Message-----
> From: Gerd Hoffmann [mailto:kraxel@xxxxxxxxxx]
> Sent: Tuesday, February 25, 2014 7:29 AM
> To: linux-fbdev@xxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx; KY Srinivasan;
> Abhishek Gupta (LIS); Haiyang Zhang; jasowang@xxxxxxxxxx;
> tomi.valkeinen@xxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx; Gerd Hoffmann; Jean-
> Christophe Plagniol-Villard
> Subject: [PATCH v4 2/2] 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 <kraxel@xxxxxxxxxx>
> ---
> drivers/video/hyperv_fb.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/video/hyperv_fb.c b/drivers/video/hyperv_fb.c index
> b7b3dd0..1b11886 100644
> --- a/drivers/video/hyperv_fb.c
> +++ b/drivers/video/hyperv_fb.c
> @@ -683,6 +683,7 @@ static int hvfb_getmem(struct fb_info *info)
> info->apertures->ranges[0].base = pci_resource_start(pdev, 0);
> info->apertures->ranges[0].size = pci_resource_len(pdev, 0);
> }
> + remove_conflicting_framebuffers(info->apertures,
> KBUILD_MODNAME,
> +false);

Thanks for the updates. I'm concerned about, after removing efifb,
if synthvid_send_config(hdev) fails, then there will be no video driver
available. Is there a way to bring the generic driver back if
synthvid_send_config(hdev) fails?

If no way to recover the generic driver, please limit the early
remove_conflicting_framebuffers() to Gen2 VM only.

Thanks,
- Haiyang

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/