Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp4092200pxf; Tue, 23 Mar 2021 02:24:24 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwu6IYGFCGEWxO8piB/TN3i47RI6thiPuwUoLPdVifSghgYaWczmMn6Ui4uJ//TLazBu5uC X-Received: by 2002:aa7:d416:: with SMTP id z22mr3587644edq.239.1616491463938; Tue, 23 Mar 2021 02:24:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616491463; cv=none; d=google.com; s=arc-20160816; b=L5a3lYUv/vhZM9mEkeEirK6OF5DgXq6WtjdDI3zItT3Wa+54vVQn44VWaSUKSpGXio jr/qRhj7d6HqhTGg9QrDs+Bd8gY26oluvB+Zr135Vcv2ppXsV6n44rscYvTn/ivJl7Wh WcDtTH0GJiIUP+CcNjRTYVK+vMcmHEBRiFrGXXOrXO9wjdl20yQYk9LeaB7VDNmSBwPm 3a4O1ClfP9fRwFqnoOnS73jv8mcGxKjaJfCyPuGViKIM+tk9OA/HFX/3P87TqlOwAq/l MqJdlcalDOdPUjHoSOYQ5a6WVZHEt3s+/hxi64XOALKlfUlmY/FibRFVx1p3lDRlHZ63 y1lA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=xbNOYiXaaVV0r7K+WAX7R7vaHwGXI9SMC07JXWDsTDk=; b=VND1HVehVyFzh5e3GxNyxvy6XIqKs79hgmvdrc17x87RU82lYaZO3sIusne93hd7PX vuUsNbhJy9chU4NvbNEAzrrEd9ucfSvzhWwu8II3yFGBn6dQciOe8vGq1hV/gEtahQz4 0GdXTZ3uqKLYwiPp8/X1pa0yKElmjf3mhgWoQaBSxzF889CqfSdflWMdwMajECpZ+RL1 S1iRj1Vfv8ZXt6G1flMcY4LtWaHJcP8KEgcsEQ4lib3yz2VTeQ7rJTJErL8I3zUGRLoy aEHqNSJltPeEeK5b0hVBJHLyp5uQv9YDUNoHWkA28SoFcpHR50+lGHuxxeOG4rZBblxb aNaw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n20si1502346ejz.327.2021.03.23.02.24.00; Tue, 23 Mar 2021 02:24:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230046AbhCWJWm (ORCPT + 99 others); Tue, 23 Mar 2021 05:22:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38776 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230009AbhCWJWd (ORCPT ); Tue, 23 Mar 2021 05:22:33 -0400 Received: from Chamillionaire.breakpoint.cc (Chamillionaire.breakpoint.cc [IPv6:2a0a:51c0:0:12e:520::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 00B9FC061574 for ; Tue, 23 Mar 2021 02:22:32 -0700 (PDT) Received: from bigeasy by Chamillionaire.breakpoint.cc with local (Exim 4.92) (envelope-from ) id 1lOdEz-0003VM-TV; Tue, 23 Mar 2021 10:22:21 +0100 Date: Tue, 23 Mar 2021 10:22:21 +0100 From: Sebastian Andrzej Siewior To: Thomas Gleixner , Peter Zijlstra Cc: kernel test robot , LKML , x86@kernel.org, lkp@lists.01.org, lkp@intel.com, Jani Nikula , Joonas Lahtinen , Rodrigo Vivi Subject: [PATCH] drm/i915: Use tasklet_unlock_spin_wait() in __tasklet_disable_sync_once() Message-ID: <20210323092221.awq7g5b2muzypjw3@flow> References: <20210322082522.GH32426@xsang-OptiPlex-9020> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20210322082522.GH32426@xsang-OptiPlex-9020> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The i915 driver has its own tasklet interface which was overseen in the tasklet rework. __tasklet_disable_sync_once() is a wrapper around tasklet_unlock_wait(). tasklet_unlock_wait() might sleep, but the i915 wrappers invoke it from non-preemtible contexts with bottom halves disabled. Use tasklet_unlock_spin_wait() instead which can be invoked from non-preemptible contexts. Fixes: da044747401fc ("tasklets: Replace spin wait in tasklet_unlock_wait()") Reported-by: kernel test robot Signed-off-by: Sebastian Andrzej Siewior --- drivers/gpu/drm/i915/i915_gem.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/i915_gem.h b/drivers/gpu/drm/i915/i915_gem.h index e622aee6e4be9..440c35f1abc9e 100644 --- a/drivers/gpu/drm/i915/i915_gem.h +++ b/drivers/gpu/drm/i915/i915_gem.h @@ -105,7 +105,7 @@ static inline bool tasklet_is_locked(const struct tasklet_struct *t) static inline void __tasklet_disable_sync_once(struct tasklet_struct *t) { if (!atomic_fetch_inc(&t->count)) - tasklet_unlock_wait(t); + tasklet_unlock_spin_wait(t); } static inline bool __tasklet_is_enabled(const struct tasklet_struct *t) -- 2.31.0