lkml.org 
[lkml]   [2022]   [Jan]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.16 0207/1039] drm/vmwgfx: Fail to initialize on broken configs
    Date
    From: Zack Rusin <zackr@vmware.com>

    [ Upstream commit c451af78f301ff5156998d571c37cab329c10051 ]

    Some of our hosts have a bug where rescaning a pci bus results in stale
    fifo memory being mapped on the host. This makes any fifo communication
    impossible resulting in various kernel crashes.

    Instead of unexpectedly crashing, predictably fail to load the driver
    which will preserve the system.

    Fixes: fb1d9738ca05 ("drm/vmwgfx: Add DRM driver for VMware Virtual GPU")
    Signed-off-by: Zack Rusin <zackr@vmware.com>
    Reviewed-by: Martin Krastev <krastevm@vmware.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20211105193845.258816-4-zackr@vmware.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c | 7 +++++++
    1 file changed, 7 insertions(+)

    diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c b/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c
    index 67db472d3493c..a3bfbb6c3e14a 100644
    --- a/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c
    +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c
    @@ -145,6 +145,13 @@ struct vmw_fifo_state *vmw_fifo_create(struct vmw_private *dev_priv)
    (unsigned int) max,
    (unsigned int) min,
    (unsigned int) fifo->capabilities);
    +
    + if (unlikely(min >= max)) {
    + drm_warn(&dev_priv->drm,
    + "FIFO memory is not usable. Driver failed to initialize.");
    + return ERR_PTR(-ENXIO);
    + }
    +
    return fifo;
    }

    --
    2.34.1


    \
     
     \ /
      Last update: 2022-01-25 01:20    [W:4.039 / U:0.304 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site