]> www.infradead.org Git - users/hch/misc.git/commitdiff
drm/gma500: Add NULL check for pci_gfx_root in mid_get_vbt_data()
authorIvan Abramov <i.abramov@mt-integration.ru>
Thu, 6 Mar 2025 11:20:45 +0000 (14:20 +0300)
committerPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
Thu, 6 Mar 2025 11:30:39 +0000 (12:30 +0100)
Since pci_get_domain_bus_and_slot() can return NULL, add NULL check for
pci_gfx_root in the mid_get_vbt_data().

This change is similar to the checks implemented in mid_get_fuse_settings()
and mid_get_pci_revID(), which were introduced by commit 0cecdd818cd7
("gma500: Final enables for Oaktrail") as "additional minor
bulletproofing".

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: f910b411053f ("gma500: Add the glue to the various BIOS and firmware interfaces")
Signed-off-by: Ivan Abramov <i.abramov@mt-integration.ru>
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250306112046.17144-1-i.abramov@mt-integration.ru
drivers/gpu/drm/gma500/mid_bios.c

index 7e76790c6a81fac1f95c9d09811bdceb03490f8c..cba97d7db131d88f38d830acb09c493d8212e03c 100644 (file)
@@ -279,6 +279,11 @@ static void mid_get_vbt_data(struct drm_psb_private *dev_priv)
                                            0, PCI_DEVFN(2, 0));
        int ret = -1;
 
+       if (pci_gfx_root == NULL) {
+               WARN_ON(1);
+               return;
+       }
+
        /* Get the address of the platform config vbt */
        pci_read_config_dword(pci_gfx_root, 0xFC, &addr);
        pci_dev_put(pci_gfx_root);