From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.0 required=3.0 tests=INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BB1EFC54FCC for ; Sun, 19 Apr 2020 19:45:51 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 8A0B72145D for ; Sun, 19 Apr 2020 19:45:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8A0B72145D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 6FD7E8E0009; Sun, 19 Apr 2020 15:45:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6DEF78E0003; Sun, 19 Apr 2020 15:45:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 59B5F8E0009; Sun, 19 Apr 2020 15:45:46 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0135.hostedemail.com [216.40.44.135]) by kanga.kvack.org (Postfix) with ESMTP id 41BC98E0003 for ; Sun, 19 Apr 2020 15:45:46 -0400 (EDT) Received: from smtpin29.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id C98EF824556B for ; Sun, 19 Apr 2020 19:45:45 +0000 (UTC) X-FDA: 76725634650.29.robin17_4f638f7f0b12b X-HE-Tag: robin17_4f638f7f0b12b X-Filterd-Recvd-Size: 4998 Received: from mail-pj1-f67.google.com (mail-pj1-f67.google.com [209.85.216.67]) by imf14.hostedemail.com (Postfix) with ESMTP for ; Sun, 19 Apr 2020 19:45:45 +0000 (UTC) Received: by mail-pj1-f67.google.com with SMTP id a22so3475562pjk.5 for ; Sun, 19 Apr 2020 12:45:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=lw6CMKkQMFMHq+JcbcXT4Wlc0L0GLPdzzdwm/oxZzJU=; b=A31yBWbtJFAcfFQRD1EMwb5+Qs9n6HXEXGXhJyAAcYiEbcZTCHDXT61cDzSdMz8q8d cW+cTkbp95nmnmaUFk3fmbZTJYYEbFagOIoDl9Btr0tvjNcBh0x7+UP6H6ZfQtPf4BcQ 5aM4berJbCtewMxY4eBk+NUladCohpTWyvmbj3K/xXMXS6SnD7duvbfBDI2DXaZNYvqz HLwkdvU3V/wZuD8AhT4TdpW3iVDhXtflUM9cHulqNhLCL/5NSX6RJOLeHMrFUxdT0dED uE04UiPvRN4BFtEDSo3Hsl3z+JbqMKW1S24bWKK9XRYCUB7dcsH3N8cUijly39yQTl95 phBQ== X-Gm-Message-State: AGi0PuaiiIqYddIjeECeHTmbuq6L5MKF1lfTCKWIxHBfihaETh7W/39j a1LmqTQfePzOlDb/f8t87sg= X-Google-Smtp-Source: APiQypJN2vwqTccXzDsvJU7EvUNJe2PNem8YoTGnDKMmXr8pElEwHxwiT3otlRDKvstViTgiEvw3Lw== X-Received: by 2002:a17:90a:d3ce:: with SMTP id d14mr2807740pjw.46.1587325544475; Sun, 19 Apr 2020 12:45:44 -0700 (PDT) Received: from 42.do-not-panic.com (42.do-not-panic.com. [157.230.128.187]) by smtp.gmail.com with ESMTPSA id s63sm11869114pfb.44.2020.04.19.12.45.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2020 12:45:43 -0700 (PDT) Received: by 42.do-not-panic.com (Postfix, from userid 1000) id D737641EDA; Sun, 19 Apr 2020 19:45:38 +0000 (UTC) From: Luis Chamberlain To: axboe@kernel.dk, viro@zeniv.linux.org.uk, bvanassche@acm.org, gregkh@linuxfoundation.org, rostedt@goodmis.org, mingo@redhat.com, jack@suse.cz, ming.lei@redhat.com, nstange@suse.de, akpm@linux-foundation.org Cc: mhocko@suse.com, yukuai3@huawei.com, linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Luis Chamberlain Subject: [PATCH v2 05/10] blktrace: upgrade warns to BUG_ON() on unexpected circmunstances Date: Sun, 19 Apr 2020 19:45:24 +0000 Message-Id: <20200419194529.4872-6-mcgrof@kernel.org> X-Mailer: git-send-email 2.23.0.rc1 In-Reply-To: <20200419194529.4872-1-mcgrof@kernel.org> References: <20200419194529.4872-1-mcgrof@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Now that the request_queue removal is scheduled synchronously again, we have certain expectations on when debugfs directories used for blktrace are used. Any violation of these expecations should reflect core bugs we want to hear about. Signed-off-by: Luis Chamberlain --- kernel/trace/blktrace.c | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c index 8f87979d0971..909db597b551 100644 --- a/kernel/trace/blktrace.c +++ b/kernel/trace/blktrace.c @@ -498,10 +498,7 @@ static struct dentry *blk_trace_debugfs_dir(struct b= lk_user_trace_setup *buts, struct dentry *dir =3D NULL; =20 /* This can only happen if we have a bug on our lower layers */ - if (!q->kobj.parent) { - pr_warn("%s: request_queue parent is gone\n", buts->name); - return NULL; - } + BUG_ON(!q->kobj.parent); =20 /* * From a sysfs kobject perspective, the request_queue sits on top of @@ -510,32 +507,19 @@ static struct dentry *blk_trace_debugfs_dir(struct = blk_user_trace_setup *buts, * that if blktrace is going to be done for it. */ if (blk_trace_target_disk(buts->name, kobject_name(q->kobj.parent))) { - if (!q->debugfs_dir) { - pr_warn("%s: expected request_queue debugfs_dir is not set\n", - buts->name); - return NULL; - } + BUG_ON(!q->debugfs_dir); + /* * debugfs_lookup() is used to ensure the directory is not * taken from underneath us. We must dput() it later once * done with it within blktrace. + * + * This is also a reaffirmation that debugfs_lookup() shall + * always return the same dentry if it was already set. */ dir =3D debugfs_lookup(buts->name, blk_debugfs_root); - if (!dir) { - pr_warn("%s: expected request_queue debugfs_dir dentry is gone\n", - buts->name); - return NULL; - } - /* - * This is a reaffirmation that debugfs_lookup() shall always - * return the same dentry if it was already set. - */ - if (dir !=3D q->debugfs_dir) { - dput(dir); - pr_warn("%s: expected dentry dir !=3D q->debugfs_dir\n", - buts->name); - return NULL; - } + BUG_ON(!dir || dir !=3D q->debugfs_dir); + bt->backing_dir =3D q->debugfs_dir; return bt->backing_dir; } --=20 2.25.1