lkml.org 
[lkml]   [2022]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.18 0083/1095] drm/nouveau/kms: Fix failure path for creating DP connectors
    Date
    From: Lyude Paul <lyude@redhat.com>

    commit ca0367ca5d9216644b41f86348d6661f8d9e32d8 upstream.

    It looks like that when we moved nouveau over to using drm_dp_aux_init()
    and registering it's aux bus during late connector registration, we totally
    forgot to fix the failure codepath in nouveau_connector_create() - as it
    still seems to assume that drm_dp_aux_init() can fail (it can't).

    So, let's fix that and also add a missing check to ensure that we've
    properly allocated nv_connector->aux.name while we're at it.

    Signed-off-by: Lyude Paul <lyude@redhat.com>
    Reviewed-by: David Airlie <airlied@linux.ie>
    Fixes: fd43ad9d47e7 ("drm/nouveau/kms/nv50-: Move AUX adapter reg to connector late register/early unregister")
    Cc: <stable@vger.kernel.org> # v5.14+
    Link: https://patchwork.freedesktop.org/patch/msgid/20220526204313.656473-1-lyude@redhat.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/gpu/drm/nouveau/nouveau_connector.c | 8 +++-----
    1 file changed, 3 insertions(+), 5 deletions(-)

    --- a/drivers/gpu/drm/nouveau/nouveau_connector.c
    +++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
    @@ -1361,13 +1361,11 @@ nouveau_connector_create(struct drm_devi
    snprintf(aux_name, sizeof(aux_name), "sor-%04x-%04x",
    dcbe->hasht, dcbe->hashm);
    nv_connector->aux.name = kstrdup(aux_name, GFP_KERNEL);
    - drm_dp_aux_init(&nv_connector->aux);
    - if (ret) {
    - NV_ERROR(drm, "Failed to init AUX adapter for sor-%04x-%04x: %d\n",
    - dcbe->hasht, dcbe->hashm, ret);
    + if (!nv_connector->aux.name) {
    kfree(nv_connector);
    - return ERR_PTR(ret);
    + return ERR_PTR(-ENOMEM);
    }
    + drm_dp_aux_init(&nv_connector->aux);
    fallthrough;
    default:
    funcs = &nouveau_connector_funcs;

    \
     
     \ /
      Last update: 2022-08-15 22:19    [W:3.630 / U:0.680 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site