Received: by 2002:a05:6358:489b:b0:bb:da1:e618 with SMTP id x27csp1850350rwn; Fri, 9 Sep 2022 05:10:32 -0700 (PDT) X-Google-Smtp-Source: AA6agR5ImLiBlW3qtlSz0SSJlxR15DHOB9+dCrik1UXZ9jJVJYvsXzI+QYN1we7ETGJfrjOPFcLq X-Received: by 2002:a17:903:1209:b0:16b:81f6:e952 with SMTP id l9-20020a170903120900b0016b81f6e952mr13873357plh.48.1662725432055; Fri, 09 Sep 2022 05:10:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662725432; cv=none; d=google.com; s=arc-20160816; b=ek+lk0SX2G5+HSlXYQRMSM3z0iL4f5COVbqBn5hJ65w7HGBmK1KC/k69Ezlbrh+hzG k2HkTcC3PfeS0e+vB6iP7jY7HBEMksQ4IBqZcQxr97XYFeuWXjTp19eqdfU3BB4NBgje g6v2oNrdi92IDzs4/FX+nqX5i06Bnke9q8CKiWlZMOhD3OsgfwDh23sYWhqGxwKTqtYh otALSlPTj1gKpQat2Kq8x56BLOJoroiiUTNA6XaQ5vem1fKJ6ZieeTOJOCbyZwcajcnK 9bwOAFTcCbaRv6vDYzDJkiqI9shLfq8vIlf+G/d+WxfvdjHFqH12lCO00K89rex0lrEj o8/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:user-agent:references:in-reply-to :subject:cc:to:from:message-id:date:dkim-signature; bh=uQS5QCmc3lmFuwC2oKziP+tQMFIuwWf7syvCr7NG/t8=; b=jl74SKylDeCamASX/sK8TJrX01Y/EaOctdat96LuPM73EneGUraoQvCZcoa3c4cGtE oDHe+rTtoR2jQcaxe6fkPYKDKX0GJOY9t1JS4LEcCgrjKo14xV+8z4cPETEs+bZwx17D M8SjKRQjSF2Ll/2xB3dRfdfgyDkRxjmZFe701RsKMcMX5n/Q8pGL8c/77dHFrHitNhL/ +CDwOgI9k/U/4F3l8Mt6mZr56lzpuZG6+5N1oQZBV+xff1/heu842RAWZGZOgUY3CKq+ qPiSOPCdtK4s6uZmDV2iGnmHHY0gKI8dke6K73KXbvLZ9Ea4rPcBmifdI2fQTPI3Uh7D Nh1w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=CCeG8Hor; 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=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 8-20020a630108000000b0043494519e69si340199pgb.706.2022.09.09.05.10.17; Fri, 09 Sep 2022 05:10:32 -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=@kernel.org header.s=k20201202 header.b=CCeG8Hor; 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=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229965AbiIIMIM (ORCPT + 99 others); Fri, 9 Sep 2022 08:08:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49714 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229899AbiIIMII (ORCPT ); Fri, 9 Sep 2022 08:08:08 -0400 Received: from sin.source.kernel.org (sin.source.kernel.org [IPv6:2604:1380:40e1:4800::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4255212F20F; Fri, 9 Sep 2022 05:08:04 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sin.source.kernel.org (Postfix) with ESMTPS id BF424CE229E; Fri, 9 Sep 2022 12:08:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 49ED9C433D6; Fri, 9 Sep 2022 12:07:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1662725278; bh=Lz2P15vcZ1ZdRM5cHrVBvarPsmfwgCGjAbApIl9rp5A=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=CCeG8HorK/8vU9xByifGY+FGtLVW8gwjYZY3c3WO1c03uSgOJ5c7qF0/eB61w5nmq OQkvU8vMK8tXpNVzi3imL0xTfNainAlCIgs/vEXusT1HDA6sXZDZJaeY9mhydG+ro9 6kOeARHRaowQglhyOQe8YPwmj5d/mybpRX6r1IvJwL6x8AHtF5LSVvAL/XAMK5q/+G rq4Wld9gqMsi2I8MMgRgjQUQp1icUqKHWoprjqmVCcgjULEKoRS+mf2ViN/NXd+PWJ iYOn1skbdcD+tVuKYoMleE2RDOaCPqjoFRVaqhs6HGwc+iuHbd2PPdllOGffG+t9mx cg8mW+kfIi3cg== Received: from sofa.misterjones.org ([185.219.108.64] helo=wait-a-minute.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1oWcnc-009AnD-1t; Fri, 09 Sep 2022 13:07:56 +0100 Date: Fri, 09 Sep 2022 13:07:55 +0100 Message-ID: <87edwkrbs4.wl-maz@kernel.org> From: Marc Zyngier To: Frank Li Cc: "tglx@linutronix.de" , "robh+dt@kernel.org" , "krzysztof.kozlowski+dt@linaro.org" , "shawnguo@kernel.org" , "s.hauer@pengutronix.de" , "kw@linux.com" , "bhelgaas@google.com" , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-pci@vger.kernel.org" , Peng Fan , Aisheng Dong , "jdmason@kudzu.us" , "kernel@pengutronix.de" , "festevam@gmail.com" , dl-linux-imx , "kishon@ti.com" , "lorenzo.pieralisi@arm.com" , "ntb@lists.linux.dev" , "lznuaa@gmail.com" , "imx@lists.linux.dev" , "manivannan.sadhasivam@linaro.org" Subject: Re: [EXT] Re: [PATCH v9 2/4] irqchip: Add IMX MU MSI controller driver In-Reply-To: References: <20220907034856.3101570-1-Frank.Li@nxp.com> <20220907034856.3101570-3-Frank.Li@nxp.com> <87fsh2qpq4.wl-maz@kernel.org> <877d2dvs0d.wl-maz@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: frank.li@nxp.com, tglx@linutronix.de, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kw@linux.com, bhelgaas@google.com, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, peng.fan@nxp.com, aisheng.dong@nxp.com, jdmason@kudzu.us, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, kishon@ti.com, lorenzo.pieralisi@arm.com, ntb@lists.linux.dev, lznuaa@gmail.com, imx@lists.linux.dev, manivannan.sadhasivam@linaro.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, 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 On Thu, 08 Sep 2022 16:35:20 +0100, Frank Li wrote: > > > > > +struct imx_mu_msi { > > > > > + spinlock_t lock; > > > > > + raw_spinlock_t reglock; > > > > > > > > Why two locks? Isn't one enough to protect both MSI allocation (which > > > > happens once in a blue moon) and register access? > > > > > > [Frank Li] Previously your comment, ask me to use raw_spinlock for > > > read\write register access. I don't think raw_spinlock is good for > > > MSI allocation. > > > > Why wouldn't it be good enough? I'd really like to know.[Frank Li] ' > > [Frank Li] According to my understand, raw_spinlock skip some lockdep > /debug feature to get better performance, which should be used when > Frequently call, such as irq handle\polling thread. I'm afraid you are terribly misguided. They both have the same debug features because they are both using the same core implementation, and the only difference is whether this is preemptible for RT purposes or not. > Spinlock have DEBUG feature to check wrong use lock. Allocate MSI generally > only is call once when driver probe. Again, you should really read the code and the documentation and stop making things up. > > The basic principle, lock should be used only when necessary. Access reg and > Allocate msi is totally independence events. Independent events that do not occur simultaneously. So no harm in sharing the same lock. M. -- Without deviation from the norm, progress is not possible.