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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C70EDD29C41 for ; Mon, 19 Jan 2026 16:31:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2923D6B02B0; Mon, 19 Jan 2026 11:31:06 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 252B26B02B2; Mon, 19 Jan 2026 11:31:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 127966B02B3; Mon, 19 Jan 2026 11:31:06 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 01D896B02B0 for ; Mon, 19 Jan 2026 11:31:05 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id AE5E8562D8 for ; Mon, 19 Jan 2026 16:31:05 +0000 (UTC) X-FDA: 84349252890.19.E6C6A09 Received: from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254]) by imf14.hostedemail.com (Postfix) with ESMTP id 1C82F100008 for ; Mon, 19 Jan 2026 16:31:03 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=h2eWuvDH; spf=pass (imf14.hostedemail.com: domain of jlayton@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=jlayton@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1768840264; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=kclJY//hW7ol5koz4lkl7nBJxPLz3h3YqWVGRtkiRrE=; b=wj2lKaEANdSrfPNt4ufHXFtyaDXrKqKhlHktepDhNQSfRpgfN7yuAZQ2t3IDZADUSCBlQj u6mhl4c6nMaUVa25CdEPbMz96aNCowsnkw0bS1Y8viKTKnyxI1Y6nOPEX/wR+ntDrgUCUC opa+0yq7vOsiahzx5jX/zYAFBrpncWg= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=h2eWuvDH; spf=pass (imf14.hostedemail.com: domain of jlayton@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=jlayton@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1768840264; a=rsa-sha256; cv=none; b=D0PtaVAQAVhtgAdYmRzQSF9WgBx9imZ9xpx0DPZgOcXomO9sMPHOV38DCcw23bMbp/VEtS QI8Zfa+qBAJ8sztkNduzF8tb/05OytCN8ot8g1TD0docmvt2/sDhVdvR2kpQg6MF2gAp9z ZkauHGvUn8ywrmsM3kO4KIuiI9V61zA= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 85F8F60158; Mon, 19 Jan 2026 16:31:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C4CBEC2BC86; Mon, 19 Jan 2026 16:30:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1768840263; bh=YvhqTu858V2nHA/DvphvNPgy0WWoXV1XH8O4vHs3r6s=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=h2eWuvDHO+FHNVWC0HtfYiwQLGD+wYaxR9D3B3Ed9tIu0JUYT/Du8NCPJr2Kni+6j FzBHjGuc/OLKKlytLlDDSMvG6K/lZ+1yYDEkp/N9zqPCokk75ZABfwL6avEwi42vps 0f/64rbZnR08cTk3Jklqr4LP4IF+Xj2tBebaD1y0phkAa+Asd/Q4cqS9Zfs0k0IMkF Wcd+HNSs1kfJ+gcQ5lC7WEcMywntkKV3L2fJFu0mtjX/DfTm1UQD/RZLxzC0HuvTay SahYNV1qOWaAxchZUrdKt84Zn3hO16NvxYRmiTOmxr3zcnvDdJtPkIgDlJWEZ0vCK2 XLTl9TlK3VJ0g== From: Jeff Layton Date: Mon, 19 Jan 2026 11:26:48 -0500 Subject: [PATCH v2 31/31] nfsd: convert dprintks in check_export() to tracepoints MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260119-exportfs-nfsd-v2-31-d93368f903bd@kernel.org> References: <20260119-exportfs-nfsd-v2-0-d93368f903bd@kernel.org> In-Reply-To: <20260119-exportfs-nfsd-v2-0-d93368f903bd@kernel.org> To: Christian Brauner , Alexander Viro , Chuck Lever , NeilBrown , Olga Kornievskaia , Dai Ngo , Tom Talpey , Amir Goldstein , Hugh Dickins , Baolin Wang , Andrew Morton , Theodore Ts'o , Andreas Dilger , Jan Kara , Gao Xiang , Chao Yu , Yue Hu , Jeffle Xu , Sandeep Dhavale , Hongbo Li , Chunhai Guo , Carlos Maiolino , Ilya Dryomov , Alex Markuze , Viacheslav Dubeyko , Chris Mason , David Sterba , Luis de Bethencourt , Salah Triki , Phillip Lougher , Steve French , Paulo Alcantara , Ronnie Sahlberg , Shyam Prasad N , Bharath SM , Miklos Szeredi , Mike Marshall , Martin Brandenburg , Mark Fasheh , Joel Becker , Joseph Qi , Konstantin Komarov , Ryusuke Konishi , Trond Myklebust , Anna Schumaker , Dave Kleikamp , David Woodhouse , Richard Weinberger , Jan Kara , Andreas Gruenbacher , OGAWA Hirofumi , Jaegeuk Kim , Jonathan Corbet Cc: David Laight , Dave Chinner , Christoph Hellwig , linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-ext4@vger.kernel.org, linux-erofs@lists.ozlabs.org, linux-xfs@vger.kernel.org, ceph-devel@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-cifs@vger.kernel.org, samba-technical@lists.samba.org, linux-unionfs@vger.kernel.org, devel@lists.orangefs.org, ocfs2-devel@lists.linux.dev, ntfs3@lists.linux.dev, linux-nilfs@vger.kernel.org, jfs-discussion@lists.sourceforge.net, linux-mtd@lists.infradead.org, gfs2@lists.linux.dev, linux-f2fs-devel@lists.sourceforge.net, linux-doc@vger.kernel.org, Jeff Layton X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=4169; i=jlayton@kernel.org; h=from:subject:message-id; bh=YvhqTu858V2nHA/DvphvNPgy0WWoXV1XH8O4vHs3r6s=; b=owEBbQKS/ZANAwAKAQAOaEEZVoIVAcsmYgBpbltg7KaYG+cOnqGQwFogykRFEv2vvWPelc3rm NkydLb2mGCJAjMEAAEKAB0WIQRLwNeyRHGyoYTq9dMADmhBGVaCFQUCaW5bYAAKCRAADmhBGVaC FWqbEACWyEMei5YgEgZwLPtZYTWHb8tmOW7eGn745dbexN721w1XJin+y0uFuiiEqpYtbB01+nV 8eGJXblAwZWOM56qXzH8kIp9IF0Do5UMXMJTyUb79WR1Vxz5+svm6rH4ORCbDMoohslm0Ey+odn Zx62FtcwzZ/STJY531c69lQu2bhr3cC/ykvj+MnpDF1L6iyuPTl056aSkCGs+2TRjxpwsRGp0tV 7FV1mQVZyW+b344OwsU12+VtzNEUh3CAPnxW20OYd9f0s9HFEpZK4Y9Ep/WsEqP0165/LeBaVXZ Tihw250Wgn1dTNDwYC3840yoGmtFEjRpYdrQxlR1fxUi+1e02u+G+A2z8VPXC2UMtR7HTpWR3kq 0gpbEU4+t6RXYZ2KSP1Qp1R60LWabc62qCpOU1l2LsxieR9zzMNQzgrLEkvEzam75nzR1SYp0M1 MAZjAICvnrvk2txw2ibnrnHJErb9vl+kLuB3btLLAaMmNVQQO9QZiA3QpDitFCH5aU6ZVYP8fdD r/l2xb9t2bkCY+uL5zGtY5a9B+sKZHy6JRgOd3o/SiUBbmV6dnxq4JqqdXpdxKAPH7RgwPtK224 H9hNJK7Mkv5H+8Si6seHr0qbAPwccoRdGVCztXQ1fdG5MLjNTJb3M6cVTt5Wicf6NlgjQa664oA Z9sNNAkM0OHYjQA== X-Developer-Key: i=jlayton@kernel.org; a=openpgp; fpr=4BC0D7B24471B2A184EAF5D3000E684119568215 X-Stat-Signature: jzaafuk791useopbykddgcwzgmkdbszc X-Rspam-User: X-Rspamd-Queue-Id: 1C82F100008 X-Rspamd-Server: rspam08 X-HE-Tag: 1768840263-868826 X-HE-Meta: U2FsdGVkX19WdW5B9X0jho9OmeRMRwpiRaOX4640C3wcUr1dLDMBJxqCmo++BvbOIPS95+/xx6thB0G7y4Ghk6yFswn3tA0vo7b2S7RDvuOS/X12Vca3qJ6prnJvhX74IKB1ggvtjVVw1RCOxDs+sA9a5nW2sVebtHieFzDqJaf1IZ3Cehp7IyGyvgRT8H0ZlclNZ6OQlVppXBPg975/ywDz59KoAfU+e4HaZlf06L4UCTU+QX/qWDPJDcykoWzcCCt/rI4H5jX9bvYA79egGXiLp1zGsIonBmVhx9b+MNUs4Fur0SbbKTo19rH0AkQT8QUeZH8YxjJ3efZH9vREbOvSGsL86+5zw93X3G10Lq4+jEDhPYfeUZqncpJALOYoi+M32tMuYWv6qWplf6poH9GdhIiLByaoyPhT8LLILO252HkvOXu9azhysUd9RFGwrwSmG+t6JDs7WZkMmjHZBVASDW1Mpp43NAR6mhanIEVL1m1LzvwZEAPkGX/+8TGSvbmv6RPxO05UKkSNTFhU4NAyGCnoE0yDr0G6DtZKCLfwH5qYOI6zNd7zOcz1+iKeIbwZuXC0BDxRnSErg7vv4JLssnyXnCxb0SJzrqmLA2UJBsMBBARWTT5VvXbJ6yhtw+6tpqEeeSAyrpFSVDEGlmy31Oyn9zLFAEIUC1AVyc5MD+66M58ND/c1R+khoSKCLCOGIckvXZdFm9JPBYWxJjL/tLWnKAPrP1tGrPwQU6A9Qk1EliipBj6/R1kyAmrA9If+3O7agaFIxyeRusIy7EJanpZn7l+7544qGUmYG0BFNKAPyADo9HFGqcClbim1ShphhoTzmGFxeyAO0RlQAH1mxtP7h7sl8FcIwPnORp1R9PwnqNTwlVmBoxpT3PzWPvkjSZAoQvxz2hY8lhY1XG9q9d7HfOlxHomz7rm4yjntT118G7oJj2/FDzws0Kl0cjHIvm1vDRt7i2oPw4z WMimi8vl PiI29JXYYRCEv6ui1k9KWbRUIdZ9FXQiI0nAXFDaCOsGah8I= 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: List-Subscribe: List-Unsubscribe: Get rid of the dprintk messages in check_export(). Instead add new tracepoints that show the terminal inode and the flags. Signed-off-by: Jeff Layton --- fs/nfsd/export.c | 11 ++++++----- fs/nfsd/trace.h | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+), 5 deletions(-) diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c index bc703cf58bfa210c7c57d49f22f15bc10d7cfc91..3cc336b953b38573966c43000f31cd341380837b 100644 --- a/fs/nfsd/export.c +++ b/fs/nfsd/export.c @@ -435,31 +435,32 @@ static int check_export(const struct path *path, int *flags, unsigned char *uuid if (!(inode->i_sb->s_type->fs_flags & FS_REQUIRES_DEV) && !(*flags & NFSEXP_FSID) && uuid == NULL) { - dprintk("exp_export: export of non-dev fs without fsid\n"); + trace_nfsd_check_export_need_fsid(inode, *flags); return -EINVAL; } if (!exportfs_can_decode_fh(inode->i_sb->s_export_op)) { - dprintk("exp_export: export of invalid fs type.\n"); + trace_nfsd_check_export_invalid_fstype(inode, *flags); return -EINVAL; } if (!(inode->i_sb->s_export_op->flags & EXPORT_OP_STABLE_HANDLES)) { - dprintk("%s: fs does not provide stable filehandles!\n", __func__); + trace_nfsd_check_export_no_stable_fh(inode, *flags); return -EINVAL; } if (is_idmapped_mnt(path->mnt)) { dprintk("exp_export: export of idmapped mounts not yet supported.\n"); + trace_nfsd_check_export_idmapped(inode, *flags); return -EINVAL; } if (inode->i_sb->s_export_op->flags & EXPORT_OP_NOSUBTREECHK && !(*flags & NFSEXP_NOSUBTREECHECK)) { - dprintk("%s: %s does not support subtree checking!\n", - __func__, inode->i_sb->s_type->name); + trace_nfsd_check_export_subtree(inode, *flags); return -EINVAL; } + trace_nfsd_check_export_success(inode, *flags); return 0; } diff --git a/fs/nfsd/trace.h b/fs/nfsd/trace.h index 5ae2a611e57f4b4e51a4d9eb6e0fccb66ad8d288..e3f5fe1181b605b34cb70d53f32739c3ef9b82f6 100644 --- a/fs/nfsd/trace.h +++ b/fs/nfsd/trace.h @@ -339,6 +339,58 @@ DEFINE_EVENT_CONDITION(nfsd_fh_err_class, nfsd_##name, \ DEFINE_NFSD_FH_ERR_EVENT(set_fh_dentry_badexport); DEFINE_NFSD_FH_ERR_EVENT(set_fh_dentry_badhandle); +#define show_export_flags(val) \ + __print_flags(val, "|", \ + { NFSEXP_READONLY, "READONLY" }, \ + { NFSEXP_INSECURE_PORT, "INSECURE" }, \ + { NFSEXP_ROOTSQUASH, "ROOTSQUASH" }, \ + { NFSEXP_ALLSQUASH, "ALLSQUASH" }, \ + { NFSEXP_ASYNC, "ASYNC" }, \ + { NFSEXP_GATHERED_WRITES, "GATHERED_WRITES" }, \ + { NFSEXP_NOREADDIRPLUS, "NOREADDIRPLUS" }, \ + { NFSEXP_SECURITY_LABEL, "SECURITY_LABEL" }, \ + { NFSEXP_NOHIDE, "NOHIDE" }, \ + { NFSEXP_NOSUBTREECHECK, "NOSUBTREECHECK" }, \ + { NFSEXP_NOAUTHNLM, "NOAUTHNLM" }, \ + { NFSEXP_MSNFS, "MSNFS" }, \ + { NFSEXP_FSID, "FSID" }, \ + { NFSEXP_CROSSMOUNT, "CROSSMOUNT" }, \ + { NFSEXP_NOACL, "NOACL" }, \ + { NFSEXP_V4ROOT, "V4ROOT" }, \ + { NFSEXP_PNFS, "PNFS" }) + +DECLARE_EVENT_CLASS(nfsd_check_export_class, + TP_PROTO(const struct inode *inode, + int flags), + TP_ARGS(inode, flags), + TP_STRUCT__entry( + __field(dev_t, dev) + __field(ino_t, ino) + __field(int, flags) + ), + TP_fast_assign( + __entry->dev = inode->i_sb->s_dev; + __entry->ino = inode->i_ino; + __entry->flags = flags; + ), + TP_printk("dev=%u:%u:%lu flags=%s", + MAJOR(__entry->dev), MINOR(__entry->dev), + __entry->ino, show_export_flags(__entry->flags)) +) + +#define DEFINE_NFSD_CHECK_EXPORT_EVENT(name) \ +DEFINE_EVENT(nfsd_check_export_class, nfsd_check_export_##name, \ + TP_PROTO(const struct inode *inode, \ + int flags), \ + TP_ARGS(inode, flags)) + +DEFINE_NFSD_CHECK_EXPORT_EVENT(need_fsid); +DEFINE_NFSD_CHECK_EXPORT_EVENT(invalid_fstype); +DEFINE_NFSD_CHECK_EXPORT_EVENT(no_stable_fh); +DEFINE_NFSD_CHECK_EXPORT_EVENT(idmapped); +DEFINE_NFSD_CHECK_EXPORT_EVENT(subtree); +DEFINE_NFSD_CHECK_EXPORT_EVENT(success); + TRACE_EVENT(nfsd_exp_find_key, TP_PROTO(const struct svc_expkey *key, int status), -- 2.52.0