From patchwork Fri Jun 17 23:33:25 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 582577 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 43A6CC43334 for ; Fri, 17 Jun 2022 23:33:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230296AbiFQXdi (ORCPT ); Fri, 17 Jun 2022 19:33:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36746 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237732AbiFQXde (ORCPT ); Fri, 17 Jun 2022 19:33:34 -0400 Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com [IPv6:2a00:1450:4864:20::22f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 69E0B663C0 for ; Fri, 17 Jun 2022 16:33:33 -0700 (PDT) Received: by mail-lj1-x22f.google.com with SMTP id g12so128619ljk.11 for ; Fri, 17 Jun 2022 16:33:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9plUk4yuJHI9KQEwjKvSKAhzBHEdS1qic5Z60CrCjLI=; b=vwYNKA3mFqnN6V3Y0psPcXFYgGmC7OjV0mQTP0R/36Wp4nsaDK0xw8EA/8M93r/d72 UBeXvvd617oBpcfeECb8QB1p1QKQOLExELPmWCT8rinXftWy5z0cjH/zW+r8nQdMjogv 1rHrUfH54XhDdG9jYD2ZA5cxHobggE95E992uC+wHqrh90xC06zbbcT3JK1UCcdxE2Ve fo9iI38UmP76cqTifI0SBUwJBIOUig8xU8EViQ0ErNfOIbr7IQoqLOXcjr3tbLtUUu/B EmpXderT7ZBZ+jCCX1cC0Xz22iZatkiSsR4U+47Vrm3sqe6F0FlE15nRUvLnUZXTmVo+ Nyow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=9plUk4yuJHI9KQEwjKvSKAhzBHEdS1qic5Z60CrCjLI=; b=X6utZWvfBlUSlf3epNgelw5cv+Lc6yc4pVaejkrSK0ZUWVsQoXbqBngPyyrFWdqlB1 B75Sig2+gXAeT0JcpOYb1m9PiRLKDhB7kR/mqlMAsGDgD/77PAjxvLV3MQ19jnODZOp3 EMmh5xpjUyZWiRlVLZruJ5E/MAClKlOw6qVlHnhW18Eh8pYrW5sSV12MFbQlvHKxp/tC 7snrkwzN94G7H+BLsGyfB2n3VBByOMgDNxIA9/tve9JKkiwRvVHOQyR9T1ifnFI67xnY FcLUUBSEJKb5iZ2FCK8Kc+js7R/8sFF8IJjqNcgCcoDS6qdkb7FbOLt9myWHoYg9lPKp CR+A== X-Gm-Message-State: AJIora9ESWBRf0QMHF4h4Vh0vyNqnAR3w1b4Nf5B0qUuIQfcdJUBr+gv IzX48/ybcRgAjYzy6gfDSkxESw== X-Google-Smtp-Source: AGRyM1ucXsrdIM7nzBNXjCAc2D9qJZH6jHx/c1+TagewrvF+KfQOEgkB+zuAhD9m+o2RYJMWtS0+FQ== X-Received: by 2002:a2e:9958:0:b0:25a:541a:1273 with SMTP id r24-20020a2e9958000000b0025a541a1273mr2287584ljj.516.1655508811728; Fri, 17 Jun 2022 16:33:31 -0700 (PDT) Received: from eriador.lan ([37.153.55.125]) by smtp.gmail.com with ESMTPSA id b2-20020a056512060200b004787d3cbc67sm800138lfe.219.2022.06.17.16.33.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jun 2022 16:33:31 -0700 (PDT) From: Dmitry Baryshkov To: Rob Clark , Sean Paul , Abhinav Kumar Cc: Stephen Boyd , David Airlie , Daniel Vetter , Bjorn Andersson , linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org Subject: [PATCH v6 1/4] drm/msm: clean event_thread->worker in case of an error Date: Sat, 18 Jun 2022 02:33:25 +0300 Message-Id: <20220617233328.1143665-2-dmitry.baryshkov@linaro.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220617233328.1143665-1-dmitry.baryshkov@linaro.org> References: <20220617233328.1143665-1-dmitry.baryshkov@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org If worker creation fails, nullify the event_thread->worker, so that msm_drm_uninit() doesn't try accessing invalid memory location. While we are at it, remove duplicate assignment to the ret variable. Fixes: 1041dee2178f ("drm/msm: use kthread_create_worker instead of kthread_run") Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/msm_drv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index 44485363f37a..1aab6bf86278 100644 --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c @@ -436,7 +436,7 @@ static int msm_drm_init(struct device *dev, const struct drm_driver *drv) if (IS_ERR(priv->event_thread[i].worker)) { ret = PTR_ERR(priv->event_thread[i].worker); DRM_DEV_ERROR(dev, "failed to create crtc_event kthread\n"); - ret = PTR_ERR(priv->event_thread[i].worker); + priv->event_thread[i].worker = NULL; goto err_msm_uninit; } From patchwork Fri Jun 17 23:33:27 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 582576 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B67EDC433EF for ; Fri, 17 Jun 2022 23:33:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245202AbiFQXdj (ORCPT ); Fri, 17 Jun 2022 19:33:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36764 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1380549AbiFQXdg (ORCPT ); Fri, 17 Jun 2022 19:33:36 -0400 Received: from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com [IPv6:2a00:1450:4864:20::22e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 82ED8663D4 for ; Fri, 17 Jun 2022 16:33:35 -0700 (PDT) Received: by mail-lj1-x22e.google.com with SMTP id s10so6184025ljh.12 for ; Fri, 17 Jun 2022 16:33:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=fFbdKaDNYDUS6tXkTIVt1gzmoptlTns1Lqe5DDTL1yY=; b=AaI2o7I8i1Jk4DfUsTY5N8kSi16bKmrARdQhA2mpyByoZt3ILIiW0rbvw71J1kq512 GdpVbS1jNiAK6IthLJWT5N81nDXHe54NEUGJX7d5I+duKvES5GOSE4j/wWFX0w6oOuuW kaSMdNqOg3d1P0ybFZ+K/gwoizN0Es+D8EhmgVi4sGgGXIi7OSXBCC5iaJ3ei//7czib 2S2Qk5eR1N3PCSABqztTG6mDxr7R5Kjiyw9TzwaJ1hb+GxO09VOLD3u4GrjOV3WcR059 keuZeE2dJ25BpHD+cVdWWftHTqSOBNfrgM25hWF74/oZSp/kCBdc1nFXJNxyC+lEV3IE +dfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=fFbdKaDNYDUS6tXkTIVt1gzmoptlTns1Lqe5DDTL1yY=; b=UJ+puGuEJ06T5PEwJhbOmhmGq3ExAt7y0Hs3C2rmjY9wk8S1NBkIeTFiuXUQDPXTe+ Nz7lB/GoBUjgiJqmFGxlaHjiG7+2Br1qn/RmX3fRsKp6rX8OgFQgqFhZMjR1t8U3cYGR qC++Te2yBaohkd44ZvVPrafCdDBmXDnsgOxy2eOdOJXePg0P5N53wonnumlrMgtpjikb tOW65cqM6UbypOTzxPi1jdZ97W1G8bDI9L3sVb9xZjd4XqBFxoiY27gbOIi6puI2o+BY e+MNs6g+JdZ1fWO3i8VgiINkglHRP1O3GcixL887gVGLNrGKEW1pt3Z+iQTyFdYkTvGv cLEQ== X-Gm-Message-State: AJIora9Zk7nmHKsMGJfQsquwJ17pMjy7uzq8cbnab9JyH1kyBbN+/+hM n68IbtYmVS7c6uUZR8MpiCEVAA== X-Google-Smtp-Source: AGRyM1vjvkOoYL/nCDVN8KS+ijL2/HK/m6fxMKHTRPXtCXY6yAc+T8QdOSUMolU+Z5OQQv5iXO4/aQ== X-Received: by 2002:a2e:99c7:0:b0:255:6913:9039 with SMTP id l7-20020a2e99c7000000b0025569139039mr6088903ljj.127.1655508813916; Fri, 17 Jun 2022 16:33:33 -0700 (PDT) Received: from eriador.lan ([37.153.55.125]) by smtp.gmail.com with ESMTPSA id b2-20020a056512060200b004787d3cbc67sm800138lfe.219.2022.06.17.16.33.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jun 2022 16:33:33 -0700 (PDT) From: Dmitry Baryshkov To: Rob Clark , Sean Paul , Abhinav Kumar Cc: Stephen Boyd , David Airlie , Daniel Vetter , Bjorn Andersson , linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org Subject: [PATCH v6 3/4] drm/msm/mdp5: convert to drm_crtc_handle_vblank() Date: Sat, 18 Jun 2022 02:33:27 +0300 Message-Id: <20220617233328.1143665-4-dmitry.baryshkov@linaro.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220617233328.1143665-1-dmitry.baryshkov@linaro.org> References: <20220617233328.1143665-1-dmitry.baryshkov@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org Stop using deprecated drm_handle_vblank(), use drm_crtc_handle_vblank() instead. Reviewed-by: Abhinav Kumar Reviewed-by: Stephen Boyd Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/mdp5/mdp5_irq.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_irq.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_irq.c index 9b4c8d92ff32..43443a435d59 100644 --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_irq.c +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_irq.c @@ -82,8 +82,7 @@ irqreturn_t mdp5_irq(struct msm_kms *kms) struct mdp_kms *mdp_kms = to_mdp_kms(kms); struct mdp5_kms *mdp5_kms = to_mdp5_kms(mdp_kms); struct drm_device *dev = mdp5_kms->dev; - struct msm_drm_private *priv = dev->dev_private; - unsigned int id; + struct drm_crtc *crtc; uint32_t status, enable; enable = mdp5_read(mdp5_kms, REG_MDP5_INTR_EN); @@ -94,9 +93,9 @@ irqreturn_t mdp5_irq(struct msm_kms *kms) mdp_dispatch_irqs(mdp_kms, status); - for (id = 0; id < priv->num_crtcs; id++) - if (status & mdp5_crtc_vblank(priv->crtcs[id])) - drm_handle_vblank(dev, id); + drm_for_each_crtc(crtc, dev) + if (status & mdp5_crtc_vblank(crtc)) + drm_crtc_handle_vblank(crtc); return IRQ_HANDLED; }