Received: by 2002:a05:6358:c692:b0:131:369:b2a3 with SMTP id fe18csp2029595rwb; Thu, 27 Jul 2023 00:30:35 -0700 (PDT) X-Google-Smtp-Source: APBJJlESN1X6QuB52uBSoQwi12qpCWUR6e/wmxEg8fTodLlfDP3H36RVytOros9YGv8G8lykuQtd X-Received: by 2002:a05:620a:198e:b0:765:519c:db1d with SMTP id bm14-20020a05620a198e00b00765519cdb1dmr5208830qkb.39.1690443035597; Thu, 27 Jul 2023 00:30:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690443035; cv=none; d=google.com; s=arc-20160816; b=Y2LUe66qLGMmkFD1MiubmTYWdRmtxelDHxghwqOhVt/YM8/qGBV08YoeheExwnBWu1 nCEief2isth+fIL/4hfDHMNBbCqs+s6nDTHtlosckZrZrs75vw3QcndMbnfshzPsHdoC yOldP+Z1dk/xga05tuu+RyTzQ991B4Uiy3XqjOttN3QiOJTZ1Fmqj+Zl1tpuGsAj1eIv j9SWi3B1uEAy4ufEgnmwXl6ZW2rk3K/JxOpedknsR07nWTh0JOsNoWP8zNRupibtC4EP 0iDGC5u7LEMjYOHkDsX8ovmAhvbQJK1wWNctY/OYeGUxdbaaKKer/lz6oSihgF8e85s9 PcEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=gDMd41Dppy+GW2j8IJmSNZoys4XWs/tk9fmwJOFxXQs=; fh=tcUByLzjw4k51GMx5l1tkHdoEguXmDhSfc2CrPU73ko=; b=Q+fW38S7Xp+a50FJfkuyn9w+Dwl0IN4gpb3gV3ooDwxsRJtFYsfRdV01AM/AWUPrJh yRDGQRuHarW8xJlnE/tYg4YcY7vFL4rkf3HHmAtpNzoZuaE7gDicvN1Plj/9L4QIsvjT ivcncKdh2FfVEeVlRuZTYo+dRmMRXcNXl5ElU+N41O0PiZget8bprxda4YzxUKLAHMn9 qyjo1C19V5e5JNc9m9F80Fll54Fue/mWa/TrQfMy0KEK6Ldzvvegi4OQOx6kxYTvvsnI dLgsW5JWcU1DsnCrCg8NfBlwhwE3/dhCNoenAP+/hgu6a6kSdDjenhkxVEotqwQH8qZ4 0NlA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b="LdStxRx/"; 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=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id oa16-20020a17090b1bd000b002681ffd2f97si1032422pjb.90.2023.07.27.00.30.15; Thu, 27 Jul 2023 00:30:35 -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=@gmail.com header.s=20221208 header.b="LdStxRx/"; 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=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231902AbjG0GtJ (ORCPT + 99 others); Thu, 27 Jul 2023 02:49:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41990 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231717AbjG0GtG (ORCPT ); Thu, 27 Jul 2023 02:49:06 -0400 Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B313F2135; Wed, 26 Jul 2023 23:49:05 -0700 (PDT) Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-3fbd33a57dcso6763345e9.0; Wed, 26 Jul 2023 23:49:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1690440544; x=1691045344; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=gDMd41Dppy+GW2j8IJmSNZoys4XWs/tk9fmwJOFxXQs=; b=LdStxRx/rojbIZQRcjcThPxHjmWKNHrQFYcqIdh3l82MQKBUNEsffywr9YTYxmyp9e kYS5a/DArAjxMCa3FlTtM8RPBv35zGgkXGML9mtrw8/9leBsv33hMUtxnaUFpS159WS9 nN8HNkogZzBbnuMR3Vrwef7juov9MGdJDFAmjb526IB8G9CZTY0MZtGeTeHVyG7M2v7R Pn5yoXD45gVNuFp9QwldfO6EBsovXOhZYi/Kght3/hxG3SbthcFiAs3YG7yut5qSNYNB z6Jnl+Cd020mshqXEBgvqRcNsaOwkwkVcKYrmo/95ZbgdqOYe86QMuK6AqQP3Vrn8xCb uh5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690440544; x=1691045344; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=gDMd41Dppy+GW2j8IJmSNZoys4XWs/tk9fmwJOFxXQs=; b=S3oQwY9HVqXDU5wHrHiEosFKsRKCpfSRRpGNV02CesWO4UcyhWlSJe57oIKLOteC3y cPq0o0yDt6gk1JlKPXMUEbzui+K/DZksrRqeGfv54ZnFQjQUYLBHLo1OP4xowK8knuIZ w7RtqwWsWIXLsdOwgYOnFgI166Utj32ipoxcYrHjsUgX4Ur274I8y3xsHxgH6Wlgkvcc K1V8w9O5NaKv+vsHfFaKLeBaQAWMy44GZQ/9F6wPlDqH6fW9a0KHy39ZqNDNF9KiTr7C ChwPXmIU3W0/u/zS/2wDh0bI9ddzLyeRExQvZ1sJhFkFWVtgrm27GlfqZR1xV05cgIVn ww/w== X-Gm-Message-State: ABy/qLYVNpCXJsmmIxleDmAXhJgrbTHN81NzK+zhrtYqqNJkQ382qtat fMeJuZjBC3Mu6w6v+xk0aY/0fR0iAIVCeIK9+arfGkVDbXceMA== X-Received: by 2002:a7b:c38e:0:b0:3fd:3006:410a with SMTP id s14-20020a7bc38e000000b003fd3006410amr954081wmj.25.1690440544113; Wed, 26 Jul 2023 23:49:04 -0700 (PDT) MIME-Version: 1.0 References: <20230726104827.60382-1-dg573847474@gmail.com> <9378e69f-2bd4-9d8d-c736-b8799f6ebecc@deltatee.com> <0e4caa6c-d5bd-61e7-2ef6-300973cd2db6@deltatee.com> In-Reply-To: <0e4caa6c-d5bd-61e7-2ef6-300973cd2db6@deltatee.com> From: Chengfeng Ye Date: Thu, 27 Jul 2023 14:48:52 +0800 Message-ID: Subject: Re: [PATCH] dmaengine: plx_dma: Fix potential deadlock on &plxdev->ring_lock To: Logan Gunthorpe Cc: Christophe JAILLET , vkoul@kernel.org, Yunbo Yu , dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,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 Hi Logan and Christophe, Thanks much for the reply and reminder, and yes, spin_lock_bh() should be better. When I wrote the patch I thought the spin_lock_bh() cannot be nested, and afraid that if some outside callers called .dma_tx_status() callback with softirq already disable, then spin_unlock_bh() would unintentionally re-enable softirq(). spin_lock_irqsave() is always safer in general thus I used it. But I just check the document [1] about these API and found that _bh() can be nested. Then use spin_lock_bh() should be better due to performance concern. > So perhaps we should just revert 1d05a0bdb420? Then for this one I think revert 1d05a0bdb420 should be enough. May I ask to revert that patch, should I do anything further? (like sending a new patch). > as explained in another reply [1], would spin_lock_bh() be enough in > such a case? For the another one [2], I would send a v2 patch to change to spin_lock_bh() [1] http://books.gigatux.nl/mirror/kerneldevelopment/0672327201/ch07lev1sec6.html [2] https://lore.kernel.org/all/5125e39b-0faf-63fc-0c51-982b2a567e21@wanadoo.fr/ Thanks again, Chengfeng