From 574d530b750c96902ef064c3b6505910a19df99b Mon Sep 17 00:00:00 2001 From: Aaro Koskinen Date: Wed, 12 Sep 2012 00:44:38 +0300 Subject: [PATCH] --- yaml --- r: 325226 b: refs/heads/master c: 6b2a7e0c9bcc0a4df385d1ef8fe5109cea0260e2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/staging/xgifb/XGI_main_26.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 5b1339677713..0010500a80fd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a09f347c6cc0b2821557d1346c4733cc78a79ffa +refs/heads/master: 6b2a7e0c9bcc0a4df385d1ef8fe5109cea0260e2 diff --git a/trunk/drivers/staging/xgifb/XGI_main_26.c b/trunk/drivers/staging/xgifb/XGI_main_26.c index ba6c3475a517..98b8b096d58c 100644 --- a/trunk/drivers/staging/xgifb/XGI_main_26.c +++ b/trunk/drivers/staging/xgifb/XGI_main_26.c @@ -1700,6 +1700,7 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, struct fb_info *fb_info; struct xgifb_video_info *xgifb_info; struct xgi_hw_device_info *hw_info; + unsigned long video_size_max; fb_info = framebuffer_alloc(sizeof(*xgifb_info), &pdev->dev); if (!fb_info) @@ -1720,6 +1721,7 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, xgifb_info->subsysvendor = pdev->subsystem_vendor; xgifb_info->subsysdevice = pdev->subsystem_device; + video_size_max = pci_resource_len(pdev, 0); xgifb_info->video_base = pci_resource_start(pdev, 0); xgifb_info->mmio_base = pci_resource_start(pdev, 1); xgifb_info->mmio_size = pci_resource_len(pdev, 1); @@ -1780,6 +1782,8 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, "Fatal error: Unable to determine RAM size.\n"); ret = -ENODEV; goto error_disable; + } else if (xgifb_info->video_size > video_size_max) { + xgifb_info->video_size = video_size_max; } /* Enable PCI_LINEAR_ADDRESSING and MMIO_ENABLE */