Received: by 2002:ac0:e350:0:0:0:0:0 with SMTP id g16csp933001imn; Sat, 30 Jul 2022 08:31:08 -0700 (PDT) X-Google-Smtp-Source: AA6agR63r3ZPJLyvlsPwlZSiDxAAwvk4Ehkj9HvBI/3yhyET30Bacc3W9t0F6khXt+m/zB1M5k8q X-Received: by 2002:a17:902:76c5:b0:16d:847b:a4d0 with SMTP id j5-20020a17090276c500b0016d847ba4d0mr8737055plt.148.1659195068183; Sat, 30 Jul 2022 08:31:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659195068; cv=none; d=google.com; s=arc-20160816; b=uoCd1ko/benXZtTSI8JdHZYzL1BovOyRHAcfafnytY2aOiD9IWHLcDfDELbfaeNAOh aPOx3+tp9JTmN92Q6QRvXwjsXi9xUdlfvLhX4OC8+3SS48AzGZeGLurExYKvF2cSfSjY P57zsy0Yqs/mYiIUjCMaEDmVqu2gkcmuS0P0HUSdeCf/4bg27ZGOoXcWr/T3Lf0Wa8xD ltX31g+HySC+rf3vuS9puvmQ9i7TcOJsDtQTTZVyP9Wt7FQNhgnVLt70UUfTFipzKswQ knB55ray114IaZoOuomBpv7hFwmtg73Dy7cRJ8pZc4QwT1Vjduc+O18vKm1yjGOBdxR6 oLXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=sgSKnvjnWyJRSFtKFHoLb6PJZ13BwM1VgB2kmZohkl8=; b=f2XeAZ4yD/zqYmysLx2tSZYIzJKnBc6VTXKNU14dlzHTCeeuS8YN7m9/ZkbJejiOoR WS3hvyyxQOwJHR1uLhbWXa+zTc8FHMqnTuV2Jri3PVFx525ofSmv20H7wHRVXibtOEOr Slt27DEzOhI0sdv3cYBBXJubGguOddnPMSwslDsc2Qah7NuQIW4hlC8xcksGFA3rN82N OGTC9f/9V900ElvOAItYDUzbynsSDI88Os4gYCWRcrMabbzPDw4FFlXlfBPPc52ywLkf dRqsCkMR6FTAke/Oyxw6IVX0/kqse1g+83t/WnzO+JH8MWrAAN/dmAL/9uF91KIe/GUe 8bhw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q23-20020aa79617000000b0051b79672ca1si6611471pfg.123.2022.07.30.08.30.38; Sat, 30 Jul 2022 08:31:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-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; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234920AbiG3P3h (ORCPT + 99 others); Sat, 30 Jul 2022 11:29:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50908 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232942AbiG3P3g (ORCPT ); Sat, 30 Jul 2022 11:29:36 -0400 X-Greylist: delayed 1759 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Sat, 30 Jul 2022 08:29:35 PDT Received: from viti.kaiser.cx (viti.kaiser.cx [IPv6:2a01:238:43fe:e600:cd0c:bd4a:7a3:8e9f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 19BF813DF7; Sat, 30 Jul 2022 08:29:35 -0700 (PDT) Received: from martin by viti.kaiser.cx with local (Exim 4.89) (envelope-from ) id 1oHnwf-0004xe-VY; Sat, 30 Jul 2022 17:00:01 +0200 Date: Sat, 30 Jul 2022 17:00:01 +0200 From: Martin Kaiser To: Ahmad Fatoum Cc: Kshitiz Varshney , Horia Geanta , Pankaj Gupta , Varun Sethi , Herbert Xu , "David S . Miller" , Iuliana Prodan , Gaurav Jain , Rahul Kumar Yadav , Vabhav Sharma , Sahil Malhotra , Matt Mackall , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Steffen Trumtrar , PrasannaKumar Muralidharan , linux-imx@nxp.com, linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v1] Moving init_completion before request_irq Message-ID: <20220730150001.e2tmrusybyherkra@viti.kaiser.cx> References: <20220729100211.2204126-1-kshitiz.varshney@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) Sender: Martin Kaiser X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_NONE 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-crypto@vger.kernel.org Hello Kshitiz & Ahmad, Thus wrote Ahmad Fatoum (a.fatoum@pengutronix.de): > > + init_completion(&rngc->rng_op_done); > > + > > ret = devm_request_irq(&pdev->dev, > > irq, imx_rngc_irq, 0, pdev->name, (void *)rngc); > This should probably be moved below imx_rngc_irq_mask_clear(rngc). > init_completion can stay where it is. That way: I agree with Ahmad that this is the better approach. We should clear pending irqs and disable interrupt sources on the hardware level before we install our irq handler. Best regards, Martin > - You initialize rngc fully before registering the IRQ handler > - You don't handle pending IRQs that you want to dismiss anyway > - If the IRQ happens to be because of a SEED_DONE due to a previous > boot stage, you don't end up completing the completion prematurely.