From 1e7a04730426a96110989ed9c2bafb0d66ec2428 Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Thu, 30 Jul 2015 03:49:13 -0700 Subject: [PATCH] x86: Sanity test on vesa parameters before setting up kernel screen_info We should not set up kernel screen_info when the vesa parameters are insane, otherwise kernel will panic. Signed-off-by: Bin Meng Acked-by: Simon Glass --- drivers/pci/pci_rom.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/pci/pci_rom.c b/drivers/pci/pci_rom.c index a33efae..26db3ca 100644 --- a/drivers/pci/pci_rom.c +++ b/drivers/pci/pci_rom.c @@ -235,6 +235,10 @@ void setup_video(struct screen_info *screen_info) #ifdef CONFIG_FRAMEBUFFER_SET_VESA_MODE struct vesa_mode_info *vesa = &mode_info.vesa; + /* Sanity test on VESA parameters */ + if (!vesa->x_resolution || !vesa->y_resolution) + return; + screen_info->orig_video_isVGA = VIDEO_TYPE_VLFB; screen_info->lfb_width = vesa->x_resolution;