From mboxrd@z Thu Jan 1 00:00:00 1970 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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4D7DDC433EF for ; Thu, 6 Jan 2022 11:57:44 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 50FEC10E311; Thu, 6 Jan 2022 11:57:43 +0000 (UTC) Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0524710E311 for ; Thu, 6 Jan 2022 11:57:41 +0000 (UTC) Received: by mail-wr1-x42e.google.com with SMTP id k18so4232637wrg.11 for ; Thu, 06 Jan 2022 03:57:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ENdPYturLMBQCNNgwpLTjTkeuQD5zIfYK76z8GCeMs8=; b=QrEzROtO9x8lTVKieSna3jaRQXjuPgDwBLWEhKfh4L8ttXdrTTd7Q9cVxuDtLKtsxB Yka7a4cY80IRmxdfxR0pxZbmksiXwn98KVcTgf5RwRolMDrjaVE83Td/1Z3dR3mLx3++ ccY8ns9EGt8IELLfZifP8ZsLDiXfL0eE9W+Wkb+hjWnVDGZzKO0ZW1vSVK567duYJoso cp4DEv3T6GECbzCSzeS4kDVaNbXy+ssOJlda3kFnDwJhOHDmtPhp1fH5jpgtarC6dT8/ dgknFdtAipFPvLA3gELHhv6WTGiJew+UCLKOTy6dQMIZPHBUJ+b+g0OmeGzH7HHJ1Zjj EnaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ENdPYturLMBQCNNgwpLTjTkeuQD5zIfYK76z8GCeMs8=; b=vd75tEMzYK1+IA5odn8a7M45i4unbmPE10NRYucjBhpKxccdlvdaDFBXeBnXmM/223 xuCU8X0w353ZNo1gOAOuUVxSR+ncHZ6s2ossJ3wo70JNdSkkGgjo49zALtmBMEYMeXbC 5InguxTINu4mTBQbFK2WROOOXHe5EgZ8gq++dtLKJ/pdQklkEhNYlCS4eQeAgtc1Y91R P/Z1gk1jHJQn0dBhCfE1cRXBozJtEu6eG47P8dMtHguqahcZmL9G1gC7SnOpsLC+4pgE DyANZRpJa+WalmtDu9dDwJf5q3DIapguCKhosgEywLC4l7SR20rKb6xzSjTNQMELbCZ2 VEmw== X-Gm-Message-State: AOAM531p1jc/J0wgj66iFOWeEHnw87GEoYLWrcv9ezgjq57V3N8nwXqz fWKmjgWiPEaLKFsv5xlpGkQvVYzTTb28vaYHmQkQkA== X-Google-Smtp-Source: ABdhPJxZiF9wtSKnHcMfpyfw/zQHz3JTYsQ07e9gVX4ncIx5ryzekJ7/fQULWO53DEaQnfYTWkiDwsODW7Y10guZBSg= X-Received: by 2002:a05:6000:156b:: with SMTP id 11mr51162670wrz.261.1641470260494; Thu, 06 Jan 2022 03:57:40 -0800 (PST) MIME-Version: 1.0 References: <20220105120442.14418-1-linmq006@gmail.com> In-Reply-To: <20220105120442.14418-1-linmq006@gmail.com> From: Dave Stevenson Date: Thu, 6 Jan 2022 11:57:23 +0000 Message-ID: Subject: Re: [PATCH] drm/v3d: Fix PM disable depth imbalance in v3d_platform_drm_probe To: Miaoqian Lin Content-Type: text/plain; charset="UTF-8" X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , Eric Anholt , DRI Development , LKML , Emma Anholt Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Thanks for the patch. On Wed, 5 Jan 2022 at 12:04, Miaoqian Lin wrote: > > The pm_runtime_enable will increase power disable depth. > If the probe fails, we should use pm_runtime_disable() to balance > pm_runtime_enable(). > > Fixes: 57692c9 ("drm/v3d: Introduce a new DRM driver for Broadcom V3D V3.x+") > Signed-off-by: Miaoqian Lin > --- > drivers/gpu/drm/v3d/v3d_drv.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/gpu/drm/v3d/v3d_drv.c b/drivers/gpu/drm/v3d/v3d_drv.c > index bd46396a1ae0..4f293aa733b8 100644 > --- a/drivers/gpu/drm/v3d/v3d_drv.c > +++ b/drivers/gpu/drm/v3d/v3d_drv.c > @@ -300,6 +300,8 @@ static int v3d_platform_drm_probe(struct platform_device *pdev) > v3d_gem_destroy(drm); > dma_free: > dma_free_wc(dev, 4096, v3d->mmu_scratch, v3d->mmu_scratch_paddr); > +pm_disable: > + pm_runtime_disable(dev); The dma_alloc_wc is done before the pm_runtime_enable, so the cleanup should be in the opposite order. Functionally it makes minimal difference in this case as pm_runtime_enable can't fail, but could cause confusion/errors should any other initialisation step be added between the two. The pm_disable label is also unused so not necessary, however if reversing the order then renaming dma_free to pm_disable would be sensible. Dave > return ret; > } > > -- > 2.17.1 >