Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp5846703ybn; Sun, 29 Sep 2019 07:01:01 -0700 (PDT) X-Google-Smtp-Source: APXvYqyDtWSpoGpGvcv3WUPp0df3vKTZbxjkqwD0zJcTPBcbUI2jtxZoPSubhQjCVYslhG2djxOv X-Received: by 2002:a17:906:234e:: with SMTP id m14mr15028716eja.118.1569765661872; Sun, 29 Sep 2019 07:01:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569765661; cv=none; d=google.com; s=arc-20160816; b=bmBqefjIdvSUmcrqok/UesIbXh/MyRQQ2sTGjXtfNxHfIRIEg3wX/ukVwJBu00Gag0 tiY2Zv/wS8buzPNLzuPY5viiCdoMPoalyV5wCQ1zPzNzbZzIlAA5Msscay25XdUrWog5 f6PP3plmrJq7e5y7i7USwOe/tFlRwB+HzwRJPZsn7ek99/9RGqVorflTvuTGpADTg4Zq 0l/Dman4D2p+1Q3htL68QyatkdGFJD0lbup+6xOyLAMrGuCjoOu4hSDnz34Zf97JY7Xn IxVB2dja2vczNcM49f8qHQQrzDGjKVXSDSbf7J+ofEqH/2s05zDDrVbSv67f3X2wOvyV 6pUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=tvtivmDV8w4YI6rPwhLC7bCK7gk9kxVFvr8CEfL93HI=; b=Vw/MJV5HRk/RtcO/ns839gj9HWyDsOnzRiUZwRxLV9whSQCn6qS0af/uSmaXZ7+oa2 rzkutwkJPbcoExGIPeP/1rO3xwO03wB12Yvma67qBNEajVZDFhfayGEHO/Dq9JfEAZWd 4XUg1fU+mkhyrWQfqmMHzwvmk1Jiv6mrTH1NiDuQ9nlnrF4hCndYIKBOkUuAjUKNPanY weLxvIm77S5/40AxLzNQaOyrl/llW770KNz5DGe22jF3Lo+cr4qvcdFKKVJuejIHlNtF iG0me7P+RPFBLh28i8kbkm+VkpB/UlaYb2fpAdtgM+ZeqGYl9HPVCKaoEA9swpaQYlqr iDFg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=nft91Bj6; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e25si5408976edb.308.2019.09.29.07.00.37; Sun, 29 Sep 2019 07:01:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=nft91Bj6; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729678AbfI2N7P (ORCPT + 99 others); Sun, 29 Sep 2019 09:59:15 -0400 Received: from mail.kernel.org ([198.145.29.99]:40252 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729661AbfI2N7K (ORCPT ); Sun, 29 Sep 2019 09:59:10 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 200E321920; Sun, 29 Sep 2019 13:59:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1569765549; bh=vMWlXxIAvjA49zA7WOVtwAlDJw6kqQg3z0hYUqrcyP0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nft91Bj6b7MjZid/Da4L0yaBFy0un2uLsTDv5I+IMOFArsWEtQl8szs6C2n3sFkQY 2G2ItFrca58xJYAXMIT/rkq+KS76OU54bjEMM6lrqG5T3WLMQO6XBODMKMdM//JN5O gUl6fK5PPPS+2Ks4YIEZecJT03Iv8M9KJaGlxTnI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Tetsuo Handa , syzbot+53383ae265fb161ef488@syzkaller.appspotmail.com, Waiman Long , "Peter Zijlstra (Intel)" , Andrew Morton , Linus Torvalds , "Paul E. McKenney" , Thomas Gleixner , Will Deacon , Ingo Molnar , Sasha Levin Subject: [PATCH 4.19 37/63] locking/lockdep: Add debug_locks check in __lock_downgrade() - again Date: Sun, 29 Sep 2019 15:54:10 +0200 Message-Id: <20190929135038.610861559@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190929135031.382429403@linuxfoundation.org> References: <20190929135031.382429403@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Waiman Long [ Upstream commit 71492580571467fb7177aade19c18ce7486267f5 ] Tetsuo Handa had reported he saw an incorrect "downgrading a read lock" warning right after a previous lockdep warning. It is likely that the previous warning turned off lock debugging causing the lockdep to have inconsistency states leading to the lock downgrade warning. Fix that by add a check for debug_locks at the beginning of __lock_downgrade(). Debugged-by: Tetsuo Handa Reported-by: Tetsuo Handa Reported-by: syzbot+53383ae265fb161ef488@syzkaller.appspotmail.com Signed-off-by: Waiman Long Signed-off-by: Peter Zijlstra (Intel) Cc: Andrew Morton Cc: Linus Torvalds Cc: Paul E. McKenney Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: Will Deacon Link: https://lkml.kernel.org/r/1547093005-26085-1-git-send-email-longman@redhat.com Signed-off-by: Ingo Molnar Signed-off-by: Sasha Levin --- kernel/locking/lockdep.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c index 68ba411a90075..1c8e5d186ad64 100644 --- a/kernel/locking/lockdep.c +++ b/kernel/locking/lockdep.c @@ -3608,6 +3608,9 @@ static int __lock_downgrade(struct lockdep_map *lock, unsigned long ip) unsigned int depth; int i; + if (unlikely(!debug_locks)) + return 0; + depth = curr->lockdep_depth; /* * This function is about (re)setting the class of a held lock, -- 2.20.1