Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp7885110ybl; Thu, 16 Jan 2020 07:12:23 -0800 (PST) X-Google-Smtp-Source: APXvYqwkpy/4hv9mNhOmBh7qsapE4TcCBImZzAIlwdnsBK3Ks7gbvNf8yaze2CuzpoY1zzFPeKF0 X-Received: by 2002:aca:f242:: with SMTP id q63mr4475409oih.72.1579187543653; Thu, 16 Jan 2020 07:12:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579187543; cv=none; d=google.com; s=arc-20160816; b=1Ed9F/133qC3DR1e1SKz9tmBLd961VlpZDdkzhIExnNPJJO5NQ9llkS2Ms63NZ0IUr 3l7PuFdBe1VmQowqdroBeWl0943mTCOBUMW2NMP4Zv8+uVZdbdALyxCTZ3Ihzdiwj0pc 1Ys+NrcWCuUKfpq12Qu0FU35v1xJMF2fdvP35gt+OKus0XIfcD4XtNRBW7QRY5qeKKE2 hT/qsF2D+Brh3RRO1idtyUdBVHrV5GhoPX3iZvsby8chSHXzbYHTENkbIivCrA4xcO4N CkSevTLp+RCVMA5fIXGSx6RvNTRe1qyz5QOiZNRimR7iKgM27boFx1O90pKg7H/Byjj/ 8yUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=HkvDWOy71Un4Ejg7NBoHIcDQf5aqCtLjt/UBVhVpHi8=; b=UOXiMUWx26I4YcEBEcicIusUxSOYAWnTit5AbjnLz/XqAKVukN3nnRsOwyUHULUhwL 3/hgWUaIp/iKh6zjW/VlDl1fLv8lgt2G0oWlLlOLgufsb6pV3cf4UuPTtzP/kGeH/T+P QTtyNM6GJeSISTAKsy+k+4a+tCelp69y44HOU1tTSdUugIuzsetht4VOpPQQ1szwnwF5 URTxDkDIIzO+p2UNhs4DLhxAgC1GqqOSEtMAHIu+VyE6Kk9SWhr0W+Ap45nmi2XTD2h0 LVPAar45n0DZubZQyPqFQLC7VIdIiqtdW7p+m7yA20mwxaMvd8jmoLJ7oQF0pnqeVN23 3ytw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=UZH4J0bC; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a7si13104604otp.284.2020.01.16.07.12.07; Thu, 16 Jan 2020 07:12:23 -0800 (PST) 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=@gmail.com header.s=20161025 header.b=UZH4J0bC; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726587AbgAPPJi (ORCPT + 99 others); Thu, 16 Jan 2020 10:09:38 -0500 Received: from mail-lj1-f182.google.com ([209.85.208.182]:43965 "EHLO mail-lj1-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726151AbgAPPJi (ORCPT ); Thu, 16 Jan 2020 10:09:38 -0500 Received: by mail-lj1-f182.google.com with SMTP id a13so23068840ljm.10 for ; Thu, 16 Jan 2020 07:09:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=HkvDWOy71Un4Ejg7NBoHIcDQf5aqCtLjt/UBVhVpHi8=; b=UZH4J0bCrKnCrsAO6plDNw1EmK2V0kEafwxzYnHiQYZ+Jq12m68cqhHFo8lxY4vhIg EuioDNB3JEFkAa8rcy53jocgSYWgm9DxOpXydhrYY/a/RdRrJzl9R+VOzRfiauzOgMXE GUXQuWjYSe1Rh0cT3mMWw7hiItYqCvA766VHT2AJ1IvJGhH0Fh2e7OX5WfsVbY6cwnQO 81VLlFlRAcImsl7y7rkBTfTEH4OfkyGybByNF3PcklQiSB+ZAgdcXh7eiaHwwmLmnruQ IBOl8Jeh8SwjzNgVuyzBrHcGDVN4W3QRJ4Luvq3s+GdAqYzNuCMjRbpoEnc3hEHMt53E SBRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=HkvDWOy71Un4Ejg7NBoHIcDQf5aqCtLjt/UBVhVpHi8=; b=MKUDEXd+mEVCufFzWuGdanVDd3bd+ry2akRsXv7cuLrQv42cGZZWXlQi1mb4ZLqytx fhKuCS7MBIw+0hVw3CgcSlMm19E7c5psMmHFs16u63sIVXnuoLeXkSlB3psjuoLGYs/F aK9RSta7uAMgvfN0KSJ9ivp1D4OGlc7qez8Ldk0xQOQkVvLDEAuyCmuPkf9F83JUrfEo VubEa+c99XtGe7z50PSGVEUWr5tmS2KZpUxbxQW+j1izRH2+sqRVFbLuCfhJUsU1WChN sw9HsjmMORPpJBmBsP8wMKvkAdT/xnzagqbhO0TGK2S9oS50ZZlVUPE/C4q0h1es7DyG WAzA== X-Gm-Message-State: APjAAAWl8A5AqY3Z2J/Yf9d3DI7DM+EAwV9itDj7F8cOobijD+usd85S 6PUNHXIu5LSWa0p0w42qKlWZVbZK9ckS8rOlbYc= X-Received: by 2002:a2e:7009:: with SMTP id l9mr2580636ljc.96.1579187375648; Thu, 16 Jan 2020 07:09:35 -0800 (PST) MIME-Version: 1.0 References: <0000000000007523a60576e80a47@google.com> <20180928070042.GF3439@hirez.programming.kicks-ass.net> In-Reply-To: From: Taehee Yoo Date: Fri, 17 Jan 2020 00:09:24 +0900 Message-ID: Subject: Re: BUG: MAX_LOCKDEP_CHAINS too low! To: Cong Wang Cc: Dmitry Vyukov , Peter Zijlstra , syzbot , Ingo Molnar , Will Deacon , LKML , syzkaller-bugs , Thomas Gleixner Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 16 Jan 2020 at 06:53, Cong Wang wrote: > Hi Cong, > On Mon, Jan 13, 2020 at 3:11 AM Dmitry Vyukov wrote: > > +Taehee, Cong, > > > > In the other thread Taehee mentioned the creation of dynamic keys for > > net devices that was added recently and that they are subject to some > > limits. > > syzkaller creates lots of net devices for isolation (several dozens > > per test process, but then these can be created and destroyed > > periodically). I wonder if it's the root cause of the lockdep limits > > problems? > > Very possibly. In current code base, there are 4 lockdep keys > per netdev: > > struct lock_class_key qdisc_tx_busylock_key; > struct lock_class_key qdisc_running_key; > struct lock_class_key qdisc_xmit_lock_key; > struct lock_class_key addr_list_lock_key; > > so the number of lockdep keys is at least 4x number of network > devices. > > I think only addr_list_lock_key is necessary as it has a nested > locking use case, all the rest are not. Taehee, do you agree? > > I plan to remove at least qdisc_xmit_lock_key for net-next > after the fix for net gets merged. > Yes, I fully agree with this. If we calculate the subclass for lock_nested() very well, I think we might use static lockdep key for addr_list_lock_key too. I think "dev->upper_level" and "dev->lower_level" might be used as subclass. These values are updated recursively in master/nomaster operation. Thank you Taehee Yoo > Thanks!