Received: by 2002:a05:7412:2a8c:b0:e2:908c:2ebd with SMTP id u12csp2693119rdh; Wed, 27 Sep 2023 09:49:09 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH3mXIJAf1kgex6QDQM5lfTj9pS15kALkB53PvYeuqHCRolUQpa8pbnAcGTqusMKxtzKkhG X-Received: by 2002:a05:6808:17a1:b0:3ae:524a:fcd6 with SMTP id bg33-20020a05680817a100b003ae524afcd6mr3377682oib.51.1695833349426; Wed, 27 Sep 2023 09:49:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695833349; cv=none; d=google.com; s=arc-20160816; b=gQDgW+dA2T52PAPiVbNd3eQPl4uhPus1BFh4NQHTkSvPZqREEQPf047GoskWr8d3wK xT/kiqjPXb27jrhQEhUCNT52g3GBXU6qyxuq/hYZhvW5JMmDUTFFR/3UFZO/J4nAa0Nw aas21f+RWQ7D0+vjs1kbqEPOdpwU2svd+WWZsSZrH2mDGaimEACWQnbYTGsifcvKh/jv 0E+2bshFn3y5oFFBzdmawoA6/z/zm81NXNyjKBFJCnC2R39QUIPw+Wo6eOCN8mx5v2sn HRKW8PHwEbFp/ywRV8avt0EXMLQaulBN64En4n2+fl1BIY1g/t5hpoLJEhEVUKGRgGfw VR7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:references :in-reply-to:subject:cc:to:dkim-signature:dkim-signature:from; bh=y+fvbnxtUyztktz5MfYU3ITmngoFIN05Lj7hcWNJGvc=; fh=Z6oFHO6cKr9r+mPTxJYBi2uW1jyAQ+xFFKUgDgpJlSA=; b=hnnYV1kJevcs6trCLV80yZHb7bJAG/UaTaGGSLEKaR0nXjflystVlkzwRTVb2W/bTd Qk1YvHBORRfS0Qqe9DRtAg/4aZzZSM/UE0ledfSvy0uERjU2JCWs7rXZJlB6ayKgM/Xs 1ey1aSG3qXrfigecYwoDUTWqwe78sj1YNMyLyY16zcshyDVxDsKBJVz/Q9Bu3eHBs4X/ iit4d0wQZbJIvBm5SedfxpMSFr2Q6TGNO4UMY0AceOCRkxSSWokN5k5X9cuOgBAV0AOS rBDI2nmfIvR8P2jvMlIM3BgHmLlWXr1t8nxp10HAFxJmDoKj5b0nauMH9/DkAFN6VTn5 Hrug== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=wbNssaZc; dkim=neutral (no key) header.i=@linutronix.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 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 groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id d11-20020a056a0024cb00b0068fadbc3169si17083139pfv.254.2023.09.27.09.49.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Sep 2023 09:49:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=wbNssaZc; dkim=neutral (no key) header.i=@linutronix.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id CCE6E80C6EBE; Wed, 27 Sep 2023 08:25:48 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232432AbjI0PZh (ORCPT + 99 others); Wed, 27 Sep 2023 11:25:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48344 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232425AbjI0PZg (ORCPT ); Wed, 27 Sep 2023 11:25:36 -0400 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 52BF2136 for ; Wed, 27 Sep 2023 08:25:35 -0700 (PDT) From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1695828334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=y+fvbnxtUyztktz5MfYU3ITmngoFIN05Lj7hcWNJGvc=; b=wbNssaZcqzwpAoKBeq7miFG6RiZNJsjggSM+a/AEdjBW+v5jbOGEc/AKsWGcbAi9EyTaz2 LxPbZLdak9NFh+PbeAOJ4pLbb67PZTCICxadDi06Dt+mg8XdMt+WcO7XxodKoat5TYy/Av 3ZO0Ebd9Mwwyv7UU9kNUrGxpZgys+0nlK3HATLeKnnD6BsHHxPW7k3lqqUEm22TELfoLZ2 a0PKnlduL7iQcCUZ90MsXxN+Rt7UA7NsMbDCw0nQq6UN7Yqk8rrLsSiLVUW1nJ9ZLJmRzR NXcp/KkLdWnJPTvX5VUI7Zp4V0TpkAyA4vjv89iH4cL01G9HQC8HFSl2g1PceQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1695828334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=y+fvbnxtUyztktz5MfYU3ITmngoFIN05Lj7hcWNJGvc=; b=5+PFf1I3/iMiGZf+fa9s0idXz1sMzzaxEZPXYjqZjfgZ61VJChvVS5kVl4iwSqjk16cewi D0puJ12s/mTUlIBA== To: Wei Gong Cc: linux-kernel@vger.kernel.org, gongwei833x@gmail.com Subject: Re: [PATCH v2] genirq: avoid long loops in handle_edge_irq In-Reply-To: References: <20230925025154.37959-1-gongwei833x@gmail.com> <87msx9f7a2.ffs@tglx> Date: Wed, 27 Sep 2023 17:25:24 +0200 Message-ID: <87edijfxjv.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Wed, 27 Sep 2023 08:25:48 -0700 (PDT) On Wed, Sep 27 2023 at 15:53, Wei Gong wrote: > O Tue, Sep 26, 2023 at 02:28:21PM +0200, Thomas Gleixner wrote: >> On Mon, Sep 25 2023 at 10:51, Wei Gong wrote: >> > diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c >> > index dc94e0bf2c94..6da455e1a692 100644 >> > --- a/kernel/irq/chip.c >> > +++ b/kernel/irq/chip.c >> > @@ -831,7 +831,8 @@ void handle_edge_irq(struct irq_desc *desc) >> > handle_irq_event(desc); >> > >> > } while ((desc->istate & IRQS_PENDING) && >> > - !irqd_irq_disabled(&desc->irq_data)); >> > + !irqd_irq_disabled(&desc->irq_data) && >> > + cpumask_test_cpu(smp_processor_id(), irq_data_get_affinity_mask(&desc->irq_data))); >> >> Assume affinty mask has CPU0 and CPU1 set and the loop is on CPU0, but >> the effective affinity is on CPU1 then how is this going to move the >> interrupt? > > Loop is on the CPU0 means that the previous effective affinity was on CPU0. > When the previous effective affinity is a subset of the new affinity mask, > the effective affinity will not be updated. That's an implementation detail of a particular interrupt chip driver, but not a general guaranteed behaviour.