From patchwork Wed Apr 11 08:30:16 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jia-Ju Bai X-Patchwork-Id: 10335365 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 9CA6660365 for ; Wed, 11 Apr 2018 11:57:29 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 85E18288C7 for ; Wed, 11 Apr 2018 11:57:29 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7AC18288CB; Wed, 11 Apr 2018 11:57:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.1 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 40962288C7 for ; Wed, 11 Apr 2018 11:57:29 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A352F6E617; Wed, 11 Apr 2018 11:57:04 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-it0-x242.google.com (mail-it0-x242.google.com [IPv6:2607:f8b0:4001:c0b::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 63BF66E576 for ; Wed, 11 Apr 2018 08:30:25 +0000 (UTC) Received: by mail-it0-x242.google.com with SMTP id 19-v6so1655420itw.3 for ; Wed, 11 Apr 2018 01:30:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=9Ng+CHlt/gluLDwGdHj94TXkGaSp62Puidk9hylt09s=; b=E5f0LdYtP+NmKZwi7iNWwu9s0ciUS+PR1lTX82bDEzd8V1/JhmuWSqtiLyOsAhm9Tj k2DWogGT+TvvSplPpj4wXDOCb+b4hFZl6EsDTVraL7wLszx18PqAUqClRUeQgr5NE6a2 gB+I65xhWXfFJuELLbXtEVAhR3K6vLCJU3evvH6MExIVw7jBEOKM7WWTbZzaXEQ11Nyd WXxeJ1t8EKEYkN86pHMenf4J2bT4gv1FM/8vg1nDOJW/3984BhaEoDOXS3ntwPOwwcjZ Xx8tHeRxCgbrHdK7joqKpijmB/YpRMVfKDTH6bO2v0GWTfk6qnWKEPHu7S9c/v5Prwkf 9Igw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=9Ng+CHlt/gluLDwGdHj94TXkGaSp62Puidk9hylt09s=; b=fTCVNZT/t1iR91WhIOs4K+WHQ5gLWtT+0Giz0QshdKh4uheXiCE3LCPB/2DBFt8qXA EONYeW15TBbVhShjC25XlFQRBNgp5pO9SaCQexVVN1z0Vjm0QtJfOKRRvGFnr8ssAcMF T8lo8t3ZZTauTH5px5vIFSBbe3lA/xAvxBnCsq8edYgC48IAxoKrLG1vsS7M7ZR6ZLWo KMUiuy22CDMLVC3Fnx7TuYZt3VGcjiERmpw4keMmoy+SybSWqYdlFFd2lAl8HCnMAXoP KYqoOWqfnhbmnr9mwdXiqcnb8DVp7F67MxZa5z/4vwl8uHMyLkxvNyeLwSFCGWmSxmL3 KNPg== X-Gm-Message-State: ALQs6tCH0lU4e8RItjuUfoqHL60LDDdOp+XW00Rq7qZpWJ9ubsYODCy/ xEKX92Z6SjBiGZsVeDw3V3k= X-Google-Smtp-Source: AIpwx4/AYLDhcG+2HC5/OVsj3X2Yb4GFbUay2NCYVGn1LepwvDMjOgwaxSarJykHsKnUvnMg3vXEtw== X-Received: by 2002:a24:ac61:: with SMTP id m33-v6mr2895198iti.116.1523435424828; Wed, 11 Apr 2018 01:30:24 -0700 (PDT) Received: from oslab.tsinghua.edu.cn ([2402:f000:1:4413:edc8:c1dd:b0a8:461d]) by smtp.gmail.com with ESMTPSA id c90-v6sm477985itd.28.2018.04.11.01.30.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 11 Apr 2018 01:30:24 -0700 (PDT) From: Jia-Ju Bai To: airlied@redhat.com, airlied@linux.ie Subject: [PATCH 2/2] gpu: drm: ast: Replace mdelay with msleep in ast_post_chip_2500 Date: Wed, 11 Apr 2018 16:30:16 +0800 Message-Id: <1523435416-4256-1-git-send-email-baijiaju1990@gmail.com> X-Mailer: git-send-email 1.9.1 X-Mailman-Approved-At: Wed, 11 Apr 2018 11:56:52 +0000 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jia-Ju Bai , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP ast_post_chip_2500() is never called in atomic context. The call chains ending up at reset_mmc_2500() are: [1] ast_post_chip_2500() <- ast_post_gpu() <- ast_drm_thaw() [2] ast_post_chip_2500() <- ast_post_gpu() <- ast_driver_load() ast_drm_thaw() calls console_lock() which can sleep. ast_driver_load() is set as ".load" in struct drm_driver. These functions are not called in atomic context. Despite never getting called from atomic context, ast_post_chip_2500() calls mdelay() to busily wait. This is not necessary and can be replaced with msleep() to avoid busy waiting. This is found by a static analysis tool named DCNS written by myself. And I also manually check it. Signed-off-by: Jia-Ju Bai --- drivers/gpu/drm/ast/ast_post.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/ast/ast_post.c b/drivers/gpu/drm/ast/ast_post.c index f7d4213..67c5e50 100644 --- a/drivers/gpu/drm/ast/ast_post.c +++ b/drivers/gpu/drm/ast/ast_post.c @@ -2063,7 +2063,7 @@ void ast_post_chip_2500(struct drm_device *dev) temp = ast_mindwm(ast, 0x1e6e2070); if (temp & 0x00800000) { ast_moutdwm(ast, 0x1e6e207c, 0x00800000); - mdelay(100); + msleep(100); ast_moutdwm(ast, 0x1e6e2070, 0x00800000); }