Received: by 2002:a05:7412:37c9:b0:e2:908c:2ebd with SMTP id jz9csp2387466rdb; Thu, 21 Sep 2023 18:09:58 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEJu5RoqDuXQGLi3GmBOvXmBmsZobAatjIGWV6+GkftU3awzd1IFx7h60v4WztVjCLT3QnP X-Received: by 2002:a05:6808:54:b0:3a7:77ff:63a3 with SMTP id v20-20020a056808005400b003a777ff63a3mr6973766oic.30.1695344998331; Thu, 21 Sep 2023 18:09:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695344998; cv=none; d=google.com; s=arc-20160816; b=RXcgABNQJEcZgumEd6lQyoVbROpmGwMlucBmW8kpTsp3A9mrX0lk3rucVNG+J5cSwk n/L13h7WSMA+eL4JLLueL62OXDkRWDmgSwSYrsq8C/NM3LQ2R+LVsPIucCQ/RXPsbMYI 38GYmKV+ZjhRx0IRnSkm6mZbcUsrDm2Rq8u/2WRExSBZ3sO5gFNMUquWfKHhppLQMs4+ tdUNyO0S57T4Prq5PZT29oHykFH6NLcG7m4Up6arYcA+4xo+Ioqfpg+V4tqUXkWlmoth CQvVJIKGSW/8HpDSQwqRp3YEKTnGUAW5nuBY1KSn2f+acLvoB4OVu7tNMLHlUZDAh6pY SaEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=70cLdlRlQ6wmrVb+lO5G5T5n9IGtfTiJYwHW+xMgyWs=; fh=16P4jD+7fQesL9M7OcNfVTEkc1ILi8dNyKZZYd+1qwg=; b=eV3G4BKWM/wSasNise4NFsDXK5STM7P9kVoSFx8D69O1bm38ZESu5MsMU3JfZXCHs7 tnux3nXdX0TAa1jF+LJ/XGCzAbL89UgIvOs80yN25jsOw4CCGRHmZ96TKWz+Vyn7Hj+q f551COdxc4gcHIljlJ0sbHR6rM7nucinvFo2llnDHwcf/JKRFWIBuD57PgyjGo7w/EP4 P6OQV8m71TKv3BomwxiT13/OInsEBxoE1Y5XJ3gjQE89jd5U/BVzM83HJ1xVxHPyB2cE WTubVmmfy6El7sBXcfMk8TxSn+f1ajDeLSw4MdEEfqPTylSTn/ysmEXneySaxpLKahnT TKHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=jLdH+cnq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id u71-20020a63854a000000b00565d05b2211si2629908pgd.819.2023.09.21.18.09.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Sep 2023 18:09:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=jLdH+cnq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 678AF81B213A; Thu, 21 Sep 2023 13:57:58 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232142AbjIUU55 (ORCPT + 99 others); Thu, 21 Sep 2023 16:57:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37472 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232243AbjIUU5f (ORCPT ); Thu, 21 Sep 2023 16:57:35 -0400 Received: from casper.infradead.org (casper.infradead.org [IPv6:2001:8b0:10b:1236::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 40A804066A for ; Thu, 21 Sep 2023 11:10:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Transfer-Encoding: Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=70cLdlRlQ6wmrVb+lO5G5T5n9IGtfTiJYwHW+xMgyWs=; b=jLdH+cnqRr5ViVdt6JoCr7dBTH A8fXI6yDoy3NVMaj96gwpb8+Hbe6wAdWZUjYr6dag/E1NUKi7DULxm8Wr3bxpETzcVcssNr9LmKqy +cxDjNFh8u2+9fJ9g59VzSH/qM0BIJmVEjy7nqtrNud9cdZ9MtYyjlLSIrVT637FKkv+2h4PEWwPE zzJeNrcTx+Wx6cUoHv9a0z/txjTW96OtamblWo/GOOlBkGpPvk2wMGss8KtX5sm4AtqFRuPBHIqjx H38zktMy7dBpwbPqnEBU5fCJ/GZFWvJVavitL0rmF32nmQ4FinocWhwE3r5rbIoqjmhnE9eG+Rc8A 5D7PPX6w==; Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1qjENX-00Acj0-Fd; Thu, 21 Sep 2023 07:45:41 +0000 Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000) id 97F8C3002E3; Thu, 21 Sep 2023 09:45:38 +0200 (CEST) Date: Thu, 21 Sep 2023 09:45:38 +0200 From: Peter Zijlstra To: John Stultz Cc: Waiman Long , Ingo Molnar , Will Deacon , Boqun Feng , linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] locking/semaphore: Use wake_q to wake up processes outside lock critical section Message-ID: <20230921074538.GD14803@noisy.programming.kicks-ass.net> References: <20220909192848.963982-1-longman@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.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 (lipwig.vger.email [0.0.0.0]); Thu, 21 Sep 2023 13:57:58 -0700 (PDT) On Wed, Sep 20, 2023 at 05:05:56PM -0700, John Stultz wrote: > On Fri, Sep 9, 2022 at 12:28 PM Waiman Long wrote: > > > > It was found that a circular lock dependency can happen with the > > following locking sequence: > > > > +--> (console_sem).lock --> &p->pi_lock --> &rq->__lock --+ > > | | > > +---------------------------------------------------------+ > > > > The &p->pi_lock --> &rq->__lock sequence is very common in all the > > task_rq_lock() calls. > > Thanks for sending this out! I've been hitting these lockdep warningns > a lot recently, particularly if I have any debug printks/WARN_ONs in > the scheduler that trip, so I'm eager to get a fix for this! https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/log/?h=debug/experimental and use with: earlyprintk=serial,ttyS0,115200 force_early_printk, or somesuch. I could not have done perf or much of the sched patches without it.