Received: by 2002:a05:6a10:6d10:0:0:0:0 with SMTP id gq16csp921951pxb; Wed, 13 Apr 2022 15:48:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz0DajZWScZD8ZLZyzRu6gGtHLQWCVsCBWdsU05hWvV4dejDu/VMFlnh1BbVvrc3E/Di5dy X-Received: by 2002:a17:906:c145:b0:6da:f8c8:34f1 with SMTP id dp5-20020a170906c14500b006daf8c834f1mr38573125ejc.310.1649890127005; Wed, 13 Apr 2022 15:48:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649890126; cv=none; d=google.com; s=arc-20160816; b=S1VEZaE8sveVARdMTGfmBNLWt77DllbxW7efQYYuf9Bn9cah4EiIO12rpSiWjSm6BR OBq1K9vYQszgD3XAuaqjA4gGu1pSb9bExXCSc6KHZkv8O10ScQrf74fE9Tbpe6tzYZni aPHAPfdTKkphAk5vYipyGc3StuLmfMGP5tlYxfdRLWj9TwrLKhYPecqJrlZZ8lmTohad BbRrNpWYYFtjfCtjD3okOWNBF9vgdoBTW9ANKttwMJSeV73FwiCjh3FqIWPryUNB0W0w HEGyvtV8Ov+x8c4IGNpyc+SsgN/EGYa5Vpha2v43xTOMkv233Pi4XYU2/xTVlrxNyjPv NEiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:robot-unsubscribe :robot-id:message-id:mime-version:references:in-reply-to:cc:subject :to:reply-to:sender:from:dkim-signature:dkim-signature:date; bh=86mdrBQ5bfO1glHLGsv54Godblef0RidxRX59FMwf5I=; b=VMfKemUgCGYMz5bXHb24WKFKR4WvKS6i5qKQpdXOj4EpKM0rg/2iupFm7I8f1pj1mq GlJbXNrNiMkoYM9Nw3x4V4kbwJBWlz1RQFaMGYsM6Linu2qCd/+RI4/zROodRHsZJCte x8OO0qXyLFptB9bRT9hKDHajLpnkQbx+vrVTzS4JbI00M7KgMCphsyAcgsvynyl4V5od SxKioDk+4kLBDtSKVthvFX1wlImirqysif6FVGTbRvx78aCQBAT11bJhLwYZn2lAsw9Z xsSpYYfWPxG4MbypCvbC+5nN1ndispiZXMlKc044E7Lj/Xg32M6xBUKZWLfqjUgCA8+I MSUg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=Z7e5cleo; dkim=neutral (no key) header.i=@linutronix.de header.s=2020e header.b=VO85mUgL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id hc9-20020a170907168900b006e820adb218si915672ejc.673.2022.04.13.15.48.20; Wed, 13 Apr 2022 15:48:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=Z7e5cleo; dkim=neutral (no key) header.i=@linutronix.de header.s=2020e header.b=VO85mUgL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237040AbiDMQyP (ORCPT + 99 others); Wed, 13 Apr 2022 12:54:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47300 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234566AbiDMQyM (ORCPT ); Wed, 13 Apr 2022 12:54:12 -0400 Received: from galois.linutronix.de (Galois.linutronix.de [IPv6:2a0a:51c0:0:12e:550::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E86F5674D3; Wed, 13 Apr 2022 09:51:49 -0700 (PDT) Date: Wed, 13 Apr 2022 16:51:46 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1649868708; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=86mdrBQ5bfO1glHLGsv54Godblef0RidxRX59FMwf5I=; b=Z7e5cleoO6eg1OHsYh8MGQDt4kQJtWEc5T2vuvJg4keutI1pHaPTZHKswNmbOhYFxwsH2L aHbEqSzRaFFCDO5F4lTrUg27i2lx2RsT10ZfPCchfD7ISNlpHlIt1Yci3cQcRzan7oELC8 jztCizlRazjdrefhn/aqS3XZDJCMMCnBOi7NEVd4kAIP6G26flVaWbKbyh9HZ7UKAyXEvn 7kmEoUEQVG52ax81mditmA2DiEWb6EPbwgmyWXPZrtwR78b9ztSDyGSrRaFPwPHNLrFDbE 0yRrXqSZ29pJxyEZZru8hJ6EVd3TKr5H/VDxTmbB7RB7eTTwsFmGyCwq3zlE9A== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1649868708; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=86mdrBQ5bfO1glHLGsv54Godblef0RidxRX59FMwf5I=; b=VO85mUgLKDgwaHlvamH5Z0m/ETcRkGAOn9CfPFuZydie32geQn+MKKOX2cphuP3OyfQPnf MuzD3Yc40ILH0nCg== From: "tip-bot2 for Nadav Amit" Sender: tip-bot2@linutronix.de Reply-to: linux-kernel@vger.kernel.org To: linux-tip-commits@vger.kernel.org Subject: [tip: smp/urgent] smp: Fix offline cpu check in flush_smp_call_function_queue() Cc: Nadav Amit , Thomas Gleixner , x86@kernel.org, linux-kernel@vger.kernel.org In-Reply-To: <20220319072015.1495036-1-namit@vmware.com> References: <20220319072015.1495036-1-namit@vmware.com> MIME-Version: 1.0 Message-ID: <164986870674.4207.3617586517028813554.tip-bot2@tip-bot2> Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The following commit has been merged into the smp/urgent branch of tip: Commit-ID: 9e949a3886356fe9112c6f6f34a6e23d1d35407f Gitweb: https://git.kernel.org/tip/9e949a3886356fe9112c6f6f34a6e23d1d35407f Author: Nadav Amit AuthorDate: Sat, 19 Mar 2022 00:20:15 -07:00 Committer: Thomas Gleixner CommitterDate: Wed, 13 Apr 2022 18:44:35 +02:00 smp: Fix offline cpu check in flush_smp_call_function_queue() The check in flush_smp_call_function_queue() for callbacks that are sent to offline CPUs currently checks whether the queue is empty. However, flush_smp_call_function_queue() has just deleted all the callbacks from the queue and moved all the entries into a local list. This checks would only be positive if some callbacks were added in the short time after llist_del_all() was called. This does not seem to be the intention of this check. Change the check to look at the local list to which the entries were moved instead of the queue from which all the callbacks were just removed. Fixes: 8d056c48e4862 ("CPU hotplug, smp: flush any pending IPI callbacks before CPU offline") Signed-off-by: Nadav Amit Signed-off-by: Thomas Gleixner Link: https://lore.kernel.org/r/20220319072015.1495036-1-namit@vmware.com --- kernel/smp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/smp.c b/kernel/smp.c index 01a7c17..65a630f 100644 --- a/kernel/smp.c +++ b/kernel/smp.c @@ -579,7 +579,7 @@ static void flush_smp_call_function_queue(bool warn_cpu_offline) /* There shouldn't be any pending callbacks on an offline CPU. */ if (unlikely(warn_cpu_offline && !cpu_online(smp_processor_id()) && - !warned && !llist_empty(head))) { + !warned && entry != NULL)) { warned = true; WARN(1, "IPI on offline CPU %d\n", smp_processor_id());