[{"id":3641117,"web_url":"http://patchwork.ozlabs.org/comment/3641117/","msgid":"<20260123125737.2b6ddbbe@gandalf.local.home>","list_archive_url":null,"date":"2026-01-23T17:57:37","subject":"Re: [RFC v4 6/7] ext4: fast commit: add lock_updates tracepoint","submitter":{"id":112,"url":"http://patchwork.ozlabs.org/api/people/112/","name":"Steven Rostedt","email":"rostedt@goodmis.org"},"content":"On Tue, 20 Jan 2026 19:25:35 +0800\nLi Chen <me@linux.beauty> wrote:\n\n> Commit-time fast commit snapshots run under jbd2_journal_lock_updates(),\n> so it is useful to quantify the time spent with updates locked and to\n> understand why snapshotting can fail.\n> \n> Add a new tracepoint, ext4_fc_lock_updates, reporting the time spent in\n> the updates-locked window along with the number of snapshotted inodes\n> and ranges. Record the first snapshot failure reason in a stable snap_err\n> field for tooling.\n> \n> Signed-off-by: Li Chen <me@linux.beauty>\n> ---\n>  fs/ext4/fast_commit.c       | 86 ++++++++++++++++++++++++++++++-------\n>  include/trace/events/ext4.h | 33 ++++++++++++++\n>  2 files changed, 104 insertions(+), 15 deletions(-)\n> \n> diff --git a/fs/ext4/fast_commit.c b/fs/ext4/fast_commit.c\n> index d1eefee60912..d266eb2a4219 100644\n> --- a/fs/ext4/fast_commit.c\n> +++ b/fs/ext4/fast_commit.c\n> @@ -193,6 +193,27 @@ static struct kmem_cache *ext4_fc_range_cachep;\n>  #define EXT4_FC_SNAPSHOT_MAX_INODES\t1024\n>  #define EXT4_FC_SNAPSHOT_MAX_RANGES\t2048\n>  \n> +/*\n> + * Snapshot failure reasons for ext4_fc_lock_updates tracepoint.\n> + * Keep these stable for tooling.\n> + */\n> +enum ext4_fc_snap_err {\n> +\tEXT4_FC_SNAP_ERR_NONE = 0,\n> +\tEXT4_FC_SNAP_ERR_ES_MISS,\n> +\tEXT4_FC_SNAP_ERR_ES_DELAYED,\n> +\tEXT4_FC_SNAP_ERR_ES_OTHER,\n> +\tEXT4_FC_SNAP_ERR_INODES_CAP,\n> +\tEXT4_FC_SNAP_ERR_RANGES_CAP,\n> +\tEXT4_FC_SNAP_ERR_NOMEM,\n> +\tEXT4_FC_SNAP_ERR_INODE_LOC,\n> +};\n> +\n> +static inline void ext4_fc_set_snap_err(int *snap_err, int err)\n> +{\n> +\tif (snap_err && *snap_err == EXT4_FC_SNAP_ERR_NONE)\n> +\t\t*snap_err = err;\n> +}\n> +\n\n\n\n> diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h\n> index fd76d14c2776..a1493971821d 100644\n> --- a/include/trace/events/ext4.h\n> +++ b/include/trace/events/ext4.h\n> @@ -2812,6 +2812,39 @@ TRACE_EVENT(ext4_fc_commit_stop,\n>  \t\t  __entry->num_fc_ineligible, __entry->nblks_agg, __entry->tid)\n>  );\n>  \n\nWhy not make the snap_err into a human readable format?\n\n#define TRACE_SNAP_ERR\t\t\\\n\tEM(NONE)\t\t\\\n\tEM(ES_MISS)\t\t\\\n\tEM(ES_DELAYED)\t\t\\\n\tEM(ES_OTHER)\t\t\\\n\tEM(INODES_CAP)\t\t\\\n\tEM(RANGES_CAP)\t\t\\\n\tEM(NOMEM)\t\t\\\n\tEMe(INODE_LOC)\t\t\\\n\n#undef EM\n#undef EMe\n\n#define EM(a)\tTRACE_DEFINE_ENUM(EXT4_FC_SNAP_ERR_##a);\n#define EMe(a)\tTRACE_DEFINE_ENUM(EXT4_FC_SNAP_ERR_##a);\n\nTRACE_SNAP_ERR\n\n#undef EM\n#undef EMe\n\n#define EM(a)\t{ EXT4_FC_SNAP_ERR_##a, #a },\n#define EM(a)\t{ EXT4_FC_SNAP_ERR_##a, #a }\n\n\n> +TRACE_EVENT(ext4_fc_lock_updates,\n> +\t    TP_PROTO(struct super_block *sb, tid_t commit_tid, u64 locked_ns,\n> +\t\t     unsigned int nr_inodes, unsigned int nr_ranges, int err,\n> +\t\t     int snap_err),\n> +\n> +\tTP_ARGS(sb, commit_tid, locked_ns, nr_inodes, nr_ranges, err, snap_err),\n> +\n> +\tTP_STRUCT__entry(/* entry */\n> +\t\t__field(dev_t, dev)\n> +\t\t__field(tid_t, tid)\n> +\t\t__field(u64, locked_ns)\n> +\t\t__field(unsigned int, nr_inodes)\n> +\t\t__field(unsigned int, nr_ranges)\n> +\t\t__field(int, err)\n> +\t\t__field(int, snap_err)\n> +\t),\n> +\n> +\tTP_fast_assign(/* assign */\n> +\t\t__entry->dev = sb->s_dev;\n> +\t\t__entry->tid = commit_tid;\n> +\t\t__entry->locked_ns = locked_ns;\n> +\t\t__entry->nr_inodes = nr_inodes;\n> +\t\t__entry->nr_ranges = nr_ranges;\n> +\t\t__entry->err = err;\n> +\t\t__entry->snap_err = snap_err;\n> +\t),\n> +\n> +\tTP_printk(\"dev %d,%d tid %u locked_ns %llu nr_inodes %u nr_ranges %u err %d snap_err %d\",\n> +\t\t  MAJOR(__entry->dev), MINOR(__entry->dev), __entry->tid,\n> +\t\t  __entry->locked_ns, __entry->nr_inodes, __entry->nr_ranges,\n> +\t\t  __entry->err, __entry->snap_err)\n\nAnd instead of having the raw value of __entry->snap_err, use:\n\n\t\t__entry->err, __print_symbolic(__entry->snap_err, TRACE_SNAP_ERR))\n\n-- Steve\n\n\n> +);\n> +\n>  #define FC_REASON_NAME_STAT(reason)\t\t\t\t\t\\\n>  \tshow_fc_reason(reason),\t\t\t\t\t\t\\\n>  \t__entry->fc_ineligible_rc[reason]\n\n1","headers":{"Return-Path":"\n <SRS0=5oXb=74=vger.kernel.org=linux-ext4+bounces-13281-patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-ext4@vger.kernel.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","patchwork-incoming@ozlabs.org"],"Authentication-Results":["legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=ozlabs.org\n (client-ip=150.107.74.76; helo=mail.ozlabs.org;\n envelope-from=srs0=5oxb=74=vger.kernel.org=linux-ext4+bounces-13281-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)","gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=172.234.253.10 arc.chain=subspace.kernel.org","gandalf.ozlabs.org;\n dmarc=fail (p=none dis=none) header.from=goodmis.org","gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-ext4+bounces-13281-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=216.40.44.12","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=goodmis.org","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=goodmis.org"],"Received":["from mail.ozlabs.org (gandalf.ozlabs.org [150.107.74.76])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dyQfQ6Tlvz1xrC\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 24 Jan 2026 04:58:54 +1100 (AEDT)","from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4dyQfP1lxpz4w23\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 24 Jan 2026 04:58:53 +1100 (AEDT)","by gandalf.ozlabs.org (Postfix)\n\tid 4dyQfP1hNvz4wC8; Sat, 24 Jan 2026 04:58:53 +1100 (AEDT)","from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby gandalf.ozlabs.org (Postfix) with ESMTPS id 4dyQfK4gVPz4w23\n\tfor <patchwork-incoming@ozlabs.org>; Sat, 24 Jan 2026 04:58:49 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 0A84830860DE\n\tfor <patchwork-incoming@ozlabs.org>; Fri, 23 Jan 2026 17:57:21 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 8B4AA27B50C;\n\tFri, 23 Jan 2026 17:57:19 +0000 (UTC)","from relay.hostedemail.com (smtprelay0012.hostedemail.com\n [216.40.44.12])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id AF1A627B4FA;\n\tFri, 23 Jan 2026 17:57:17 +0000 (UTC)","from omf07.hostedemail.com (a10.router.float.18 [10.200.18.1])\n\tby unirelay07.hostedemail.com (Postfix) with ESMTP id EAA1A16022B;\n\tFri, 23 Jan 2026 17:57:10 +0000 (UTC)","from [HIDDEN] (Authenticated sender: rostedt@goodmis.org) by\n omf07.hostedemail.com (Postfix) with ESMTPA id D940920024;\n\tFri, 23 Jan 2026 17:57:08 +0000 (UTC)"],"ARC-Seal":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707; t=1769191133; cv=pass;\n\tb=gTb0lwWGzl7ciLm/NBhSy8oxfH6NzMk0zGtb71IZt8cM9w5lg7L8mndFl2iDuOo8Z/BZk1oF6mGS6SVjVbvt5xkBstuoCZ7Dj4fihYTLdFjystePhZ/fp8ETGtEGpB/r+rS5PNeppn9DS04EV8jyuPv0pIBMEF5RsKN/gAgecy/lXr9nhAqywmlKye9vCFTLiRzsxU+0C2no6BkObZ/qWDi1sgSiPNn3TG9EAI5UhfDRYedb3ruEv674GsRgt1Ps7jLeCXoFgAHNhfn7ahJiSRsA4uJfQVcVaGqMDWlRbAk5qAX9m7ZDNtVn/5pg+H6yQmEXTfp04Nq1kdR4rimFVQ==","i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1769191039; cv=none;\n b=ZIATnswe6vCE451VAP4CEOrD1vppxewkSkYa21X9ZdldkgceLHcAtyCuc2C5YOtZZN/+kTxbsrZo2rRBR+jjK5Bdtbpezv7fGCiXSwOqoSyLe2nR3ATHWS2/e28wOEnCtXgfCeoby0ZzvZwqbA7HSgAZ2BbkPqEZRm/zf1TDW04="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1769191133; c=relaxed/relaxed;\n\tbh=1LwazAPN3bOBRSH7lNtzkqSSlJRAGoe8+/JnTXesMfI=;\n\th=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:\n\t MIME-Version:Content-Type;\n b=Wy4Hv5fcicciNK1sTsHcKNt7qqOcWyqP5tnAoytbrS2PXCcuLPRt36cVfB5bZqnQJCFBnzQfCxBSIRN+bMp9KsjCi/GXX92ZxW45e6yU3rhWpoxstDAT1RF98G4yFSKAcIaRiZjN0xzo89nOK6zbJCqKWuY4QuhkQanEif6ZTsDYWQxwsKRY1OSISPbff7yjHPjEkqSw3tARUUckgp/Fdc9/9s4lsGLHkAoryNMEJc4bXJ9kFxYZSw7CSEwpLHKa8mAAnJ8DD6H19z/9MWjzCOD/dcIkntsrUFI4Y9k9SgoFqdUdq1yEEQUq9ISOe3qZZy5US+OBCq6+qGm5QUUA1Q==","i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1769191039; c=relaxed/simple;\n\tbh=4+QLjb/CwCDeH3ExRuHJJg9vjVRhUFB/O1UZTA+VLAM=;\n\th=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:\n\t MIME-Version:Content-Type;\n b=nX4UF+duEP8iUL78d6rM49Fu9jMC1kHTotx5YO5KP3qiT7v2ZhS7d82n07JBERi2opeKKBpZdM0d0TXRwZpCLMkc1J4q0oRb4LX853iL/3F9G/leRVTJnfK4PYJPH86zFVrjKzkp6FRkT3kQ2fJdOe71iBo4VKBJ6qkaUmiH+mw="],"ARC-Authentication-Results":["i=2; gandalf.ozlabs.org;\n dmarc=fail (p=none dis=none) header.from=goodmis.org;\n spf=pass (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-ext4+bounces-13281-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org","i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=goodmis.org;\n spf=pass smtp.mailfrom=goodmis.org; arc=none smtp.client-ip=216.40.44.12"],"Date":"Fri, 23 Jan 2026 12:57:37 -0500","From":"Steven Rostedt <rostedt@goodmis.org>","To":"Li Chen <me@linux.beauty>","Cc":"Zhang Yi <yi.zhang@huaweicloud.com>, \"Theodore Ts'o\" <tytso@mit.edu>,\n Andreas Dilger <adilger.kernel@dilger.ca>, Masami Hiramatsu\n <mhiramat@kernel.org>, Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,\n linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org,\n linux-trace-kernel@vger.kernel.org","Subject":"Re: [RFC v4 6/7] ext4: fast commit: add lock_updates tracepoint","Message-ID":"<20260123125737.2b6ddbbe@gandalf.local.home>","In-Reply-To":"<20260120112538.132774-7-me@linux.beauty>","References":"<20260120112538.132774-1-me@linux.beauty>\n\t<20260120112538.132774-7-me@linux.beauty>","X-Mailer":"Claws Mail 3.20.0git84 (GTK+ 2.24.33; x86_64-pc-linux-gnu)","Precedence":"bulk","X-Mailing-List":"linux-ext4@vger.kernel.org","List-Id":"<linux-ext4.vger.kernel.org>","List-Subscribe":"<mailto:linux-ext4+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-ext4+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=US-ASCII","Content-Transfer-Encoding":"7bit","X-Rspamd-Queue-Id":"D940920024","X-Stat-Signature":"5cfcpomb4bsdhw65j6p7jyceep8ki3oe","X-Rspamd-Server":"rspamout05","X-Session-Marker":"726F737465647440676F6F646D69732E6F7267","X-Session-ID":"U2FsdGVkX18ayUQTicwAkS19YmBMQjsoWLi9S4LSZbM=","X-HE-Tag":"1769191028-289448","X-HE-Meta":"\n U2FsdGVkX18itwA3BKwJlBEvi7szA+ksv6rm9NUwPu/bfijaonP9EG+vaXbUVIXknmiNkJfv7pQwpqC/XM9UwwY9lcXu3qgum5zj5LeL1mbHMaWD2eX8t1r5uWLyWgMOduLC0zptT1ezNzx8y32jslJZ9MX3IV7ZZk4xBdkPyIjdbET6KzCLiH6S0O2jbBkH5drxKnanh6Ou79hNJxRgbBAkqQOHH7HLeIOx4XDbZddKY+aqrvzPsM0z5K+9vNWuSB+TZ7zoKEtGicmz9PbvOM7OUciy8gM/YImsLvrmxMTC1lJdklb9DcsmKb+8ACcU","X-Spam-Status":"No, score=-0.2 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDMARC_NONE,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,\n\tSPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY autolearn=disabled\n\tversion=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org"}},{"id":3642137,"web_url":"http://patchwork.ozlabs.org/comment/3642137/","msgid":"<19bff57d732.675dda83304172.1851572061101730667@linux.beauty>","list_archive_url":null,"date":"2026-01-27T12:05:05","subject":"Re: [RFC v4 6/7] ext4: fast commit: add lock_updates tracepoint","submitter":{"id":84264,"url":"http://patchwork.ozlabs.org/api/people/84264/","name":"Li Chen","email":"me@linux.beauty"},"content":"Hi Steven,\n\n > On Tue, 20 Jan 2026 19:25:35 +0800\n > Li Chen <me@linux.beauty> wrote:\n > \n > > Commit-time fast commit snapshots run under jbd2_journal_lock_updates(),\n > > so it is useful to quantify the time spent with updates locked and to\n > > understand why snapshotting can fail.\n > > \n > > Add a new tracepoint, ext4_fc_lock_updates, reporting the time spent in\n > > the updates-locked window along with the number of snapshotted inodes\n > > and ranges. Record the first snapshot failure reason in a stable snap_err\n > > field for tooling.\n > > \n > > Signed-off-by: Li Chen <me@linux.beauty>\n > > ---\n > >  fs/ext4/fast_commit.c       | 86 ++++++++++++++++++++++++++++++-------\n > >  include/trace/events/ext4.h | 33 ++++++++++++++\n > >  2 files changed, 104 insertions(+), 15 deletions(-)\n > > \n > > diff --git a/fs/ext4/fast_commit.c b/fs/ext4/fast_commit.c\n > > index d1eefee60912..d266eb2a4219 100644\n > > --- a/fs/ext4/fast_commit.c\n > > +++ b/fs/ext4/fast_commit.c\n > > @@ -193,6 +193,27 @@ static struct kmem_cache *ext4_fc_range_cachep;\n > >  #define EXT4_FC_SNAPSHOT_MAX_INODES    1024\n > >  #define EXT4_FC_SNAPSHOT_MAX_RANGES    2048\n > >  \n > > +/*\n > > + * Snapshot failure reasons for ext4_fc_lock_updates tracepoint.\n > > + * Keep these stable for tooling.\n > > + */\n > > +enum ext4_fc_snap_err {\n > > +    EXT4_FC_SNAP_ERR_NONE = 0,\n > > +    EXT4_FC_SNAP_ERR_ES_MISS,\n > > +    EXT4_FC_SNAP_ERR_ES_DELAYED,\n > > +    EXT4_FC_SNAP_ERR_ES_OTHER,\n > > +    EXT4_FC_SNAP_ERR_INODES_CAP,\n > > +    EXT4_FC_SNAP_ERR_RANGES_CAP,\n > > +    EXT4_FC_SNAP_ERR_NOMEM,\n > > +    EXT4_FC_SNAP_ERR_INODE_LOC,\n > > +};\n > > +\n > > +static inline void ext4_fc_set_snap_err(int *snap_err, int err)\n > > +{\n > > +    if (snap_err && *snap_err == EXT4_FC_SNAP_ERR_NONE)\n > > +        *snap_err = err;\n > > +}\n > > +\n > \n > \n > \n > > diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h\n > > index fd76d14c2776..a1493971821d 100644\n > > --- a/include/trace/events/ext4.h\n > > +++ b/include/trace/events/ext4.h\n > > @@ -2812,6 +2812,39 @@ TRACE_EVENT(ext4_fc_commit_stop,\n > >            __entry->num_fc_ineligible, __entry->nblks_agg, __entry->tid)\n > >  );\n > >  \n > \n > Why not make the snap_err into a human readable format?\n > \n > #define TRACE_SNAP_ERR        \\\n >     EM(NONE)        \\\n >     EM(ES_MISS)        \\\n >     EM(ES_DELAYED)        \\\n >     EM(ES_OTHER)        \\\n >     EM(INODES_CAP)        \\\n >     EM(RANGES_CAP)        \\\n >     EM(NOMEM)        \\\n >     EMe(INODE_LOC)        \\\n > \n > #undef EM\n > #undef EMe\n > \n > #define EM(a)    TRACE_DEFINE_ENUM(EXT4_FC_SNAP_ERR_##a);\n > #define EMe(a)    TRACE_DEFINE_ENUM(EXT4_FC_SNAP_ERR_##a);\n > \n > TRACE_SNAP_ERR\n > \n > #undef EM\n > #undef EMe\n > \n > #define EM(a)    { EXT4_FC_SNAP_ERR_##a, #a },\n > #define EM(a)    { EXT4_FC_SNAP_ERR_##a, #a }\n > \n > \n > > +TRACE_EVENT(ext4_fc_lock_updates,\n > > +        TP_PROTO(struct super_block *sb, tid_t commit_tid, u64 locked_ns,\n > > +             unsigned int nr_inodes, unsigned int nr_ranges, int err,\n > > +             int snap_err),\n > > +\n > > +    TP_ARGS(sb, commit_tid, locked_ns, nr_inodes, nr_ranges, err, snap_err),\n > > +\n > > +    TP_STRUCT__entry(/* entry */\n > > +        __field(dev_t, dev)\n > > +        __field(tid_t, tid)\n > > +        __field(u64, locked_ns)\n > > +        __field(unsigned int, nr_inodes)\n > > +        __field(unsigned int, nr_ranges)\n > > +        __field(int, err)\n > > +        __field(int, snap_err)\n > > +    ),\n > > +\n > > +    TP_fast_assign(/* assign */\n > > +        __entry->dev = sb->s_dev;\n > > +        __entry->tid = commit_tid;\n > > +        __entry->locked_ns = locked_ns;\n > > +        __entry->nr_inodes = nr_inodes;\n > > +        __entry->nr_ranges = nr_ranges;\n > > +        __entry->err = err;\n > > +        __entry->snap_err = snap_err;\n > > +    ),\n > > +\n > > +    TP_printk(\"dev %d,%d tid %u locked_ns %llu nr_inodes %u nr_ranges %u err %d snap_err %d\",\n > > +          MAJOR(__entry->dev), MINOR(__entry->dev), __entry->tid,\n > > +          __entry->locked_ns, __entry->nr_inodes, __entry->nr_ranges,\n > > +          __entry->err, __entry->snap_err)\n > \n > And instead of having the raw value of __entry->snap_err, use:\n > \n >         __entry->err, __print_symbolic(__entry->snap_err, TRACE_SNAP_ERR))\n\nGood point. I'll switch snap_err to __print_symbolic() in v5.\n\nRegards,\nLi​","headers":{"Return-Path":"\n <SRS0=JV8l=AA=vger.kernel.org=linux-ext4+bounces-13352-patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-ext4@vger.kernel.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","patchwork-incoming@ozlabs.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=linux.beauty header.i=me@linux.beauty\n header.a=rsa-sha256 header.s=zmail header.b=cK2AEMYX;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=ozlabs.org\n (client-ip=2404:9400:2221:ea00::3; helo=mail.ozlabs.org;\n envelope-from=srs0=jv8l=aa=vger.kernel.org=linux-ext4+bounces-13352-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)","gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=\"2600:3c04:e001:36c::12fc:5321\"\n arc.chain=\"subspace.kernel.org:zohomail.com\"","gandalf.ozlabs.org;\n dmarc=none (p=none dis=none) header.from=linux.beauty","gandalf.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=linux.beauty header.i=me@linux.beauty\n header.a=rsa-sha256 header.s=zmail header.b=cK2AEMYX;\n\tdkim-atps=neutral","gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-ext4+bounces-13352-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (1024-bit key) header.d=linux.beauty header.i=me@linux.beauty\n header.b=\"cK2AEMYX\"","smtp.subspace.kernel.org;\n arc=pass smtp.client-ip=136.143.188.12","smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=linux.beauty","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.beauty"],"Received":["from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4f0kcp22S1z1xsp\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 27 Jan 2026 23:05:30 +1100 (AEDT)","from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4f0kcp0mV3z4w0p\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 27 Jan 2026 23:05:30 +1100 (AEDT)","by gandalf.ozlabs.org (Postfix)\n\tid 4f0kcp0hFzz4w1g; Tue, 27 Jan 2026 23:05:30 +1100 (AEDT)","from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby gandalf.ozlabs.org (Postfix) with ESMTPS id 4f0kck1yk7z4w0p\n\tfor <patchwork-incoming@ozlabs.org>; Tue, 27 Jan 2026 23:05:26 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id C8E2A301945A\n\tfor <patchwork-incoming@ozlabs.org>; Tue, 27 Jan 2026 12:05:23 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id F0A6830F95B;\n\tTue, 27 Jan 2026 12:05:20 +0000 (UTC)","from sender4-op-o12.zoho.com (sender4-op-o12.zoho.com\n [136.143.188.12])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 35FE31CAA68;\n\tTue, 27 Jan 2026 12:05:18 +0000 (UTC)","from mail.zoho.com by mx.zohomail.com\n\twith SMTP id 1769515505474648.5210275858253;\n Tue, 27 Jan 2026 04:05:05 -0800 (PST)"],"ARC-Seal":["i=3; a=rsa-sha256; d=ozlabs.org; s=201707; t=1769515530; cv=pass;\n\tb=tA0/k5RS5z0xNr5gAlbJoq1xyMCY8MhnV3WJV+n7+Gy/9ZaHsm1Do30Df4NrGmz6Wwx3Stf1XVFnqzb8/SHrHiTSvWAjVADb8Yj0a2QOYiK3Knq9HX1qgSvRT+J1r48d7A67K2UAsqGWzxcdtlsb2Xck7u04cM4LBzhXBB3n7J1oeCcXXyBX8HprJumI0c7FWTCRJIbeqlMLIkad0Sdl5DcRwHKmnNJMqA8GQtDmwg4AAfyYSlU3pwKXwTK7/M1kjTvJpMMA8EgfWpFDlqGE14YzcOI0RS+bX0sPX4JdXqrpnKPJ3MImBVFwNU02bcagBBX26y4VWNhr9hNlzfentQ==","i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1769515520; cv=pass;\n b=E52NUePbemiQEnCv8O4rwgn0TOS9+UfHl7218y+qLThojLTZpwuZMKlxhZ1b3Np1L62F0ck7nj9XJVkMJGc8pQXx9GM3rsvk2r7ljTZX8l142tbmBOK0TjIZ6nHCAiZManjXXdz6zbqXpb+vWpX+7lT58kLXhmJFt5d5lE7i6oo=","i=1; a=rsa-sha256; t=1769515508; cv=none;\n\td=zohomail.com; s=zohoarc;\n\tb=VxQ+2p318SvV1Cd5z3HIRr8jUi5wUMbcDsUi3BKcTcNENORANSY05wIPZhEkYMbvJ6DKhNZaDLKuqGPQK9SmgiFPxbUZibUxZlXYgCyL9zXr/BsJ1Btwb6KhDXEdFIL6KUQbuqa6nC2jggNyJdzAZ6CyyUpsgkfBvFy38sYEvFk="],"ARC-Message-Signature":["i=3; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1769515530; c=relaxed/relaxed;\n\tbh=2i50/OElbdVUVGR3fITaTkJTxabogHfd1vXgzQrqXRQ=;\n\th=Date:From:To:Cc:Message-ID:In-Reply-To:References:Subject:\n\t MIME-Version:Content-Type;\n b=sjbvBJwbhhcEpkRzlf+pV/q68jiRGFk9K4Mwup9epty2b3TYn9PgncDN8nnh2NsBJyvHhtMwvqEhfDhg4wnV/SzOb6oHbNHed3uvC4ckhg8K0qrOtbuAuvJIV+Mk6PJoFe6euY+GX7aA7b70BOZYEYUn25I0ZkmUvOp4QQlpX9JXdSCxk20sNBoKlormzbu7lHw+UbfVHsGYMEIr1cGcfxtG3sWBkx3dBC68ZGSpopT0B4rtzFvImOPaES2nEVcgMTD3cWbgv3Y2o4KSmHE2RmmIWNwS5dfRLk9jrADzMQuILMhbtW4fd4CAcsboqkBf5WVcvUuKo3jyrIQyNgR9Sw==","i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1769515520; c=relaxed/simple;\n\tbh=gjpsAVrLFLn/ss6XSGzdQaSgkaMs5epCB+WRN5bMyvQ=;\n\th=Date:From:To:Cc:Message-ID:In-Reply-To:References:Subject:\n\t MIME-Version:Content-Type;\n b=G0J3gOKSdkvCuNbE1K0e0H8wjHlWGP2rdds57VS4iMNeTHHeLMLoiqliYX38+shDvLjnedt7AOPBUwNHmc3+L4qeXWMjsRiihf6HUzFIgxcArqWP98kINx3kWUj9ozaGyKVAD+B5W8In+hPK5aGxiNbyJtCEv2Kj/ac2wq3EZxI=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com;\n s=zohoarc;\n\tt=1769515508;\n h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To;\n\tbh=2i50/OElbdVUVGR3fITaTkJTxabogHfd1vXgzQrqXRQ=;\n\tb=P599rkF57/2OaMvqavUwtusNyb+VzJakRG+xiyKlvTP0f3RDmMxu5foKbrYLZlGbziiYndGWSqHl4A742ov50hh+OsVCMtMME/mLABMnlJ9G5qX90XvmwnPxMueebc+lf6i82hzENbT8fuSkNvUgRybV3wecdLKH0U01Mp6EDrE="],"ARC-Authentication-Results":["i=3; gandalf.ozlabs.org;\n dmarc=none (p=none dis=none) header.from=linux.beauty;\n dkim=pass (1024-bit key;\n unprotected) header.d=linux.beauty header.i=me@linux.beauty\n header.a=rsa-sha256 header.s=zmail header.b=cK2AEMYX; dkim-atps=neutral;\n spf=pass (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-ext4+bounces-13352-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org","i=2; smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=linux.beauty;\n spf=pass smtp.mailfrom=linux.beauty;\n dkim=pass (1024-bit key) header.d=linux.beauty header.i=me@linux.beauty\n header.b=cK2AEMYX; arc=pass smtp.client-ip=136.143.188.12","i=1; mx.zohomail.com;\n\tdkim=pass  header.i=linux.beauty;\n\tspf=pass  smtp.mailfrom=me@linux.beauty;\n\tdmarc=pass header.from=<me@linux.beauty>"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1769515508;\n\ts=zmail; d=linux.beauty; i=me@linux.beauty;\n\th=Date:Date:From:From:To:To:Cc:Cc:Message-ID:In-Reply-To:References:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;\n\tbh=2i50/OElbdVUVGR3fITaTkJTxabogHfd1vXgzQrqXRQ=;\n\tb=cK2AEMYXy6Wn1YRAIvm65LnoTvI0q/7wx7hihECrbgKo47hpLhO0Ba5xHCzpDFKj\n\tYk7+1bcdtPv5oj3UqEM44uUk5dQAM2YRMlJx5ao19aCfIpC67n2aJlhipGjIZvoBUuq\n\tOVqvPatBgeTHXgigPxWX58kqS+eR99t6I/xJb34Q=","Date":"Tue, 27 Jan 2026 20:05:05 +0800","From":"Li Chen <me@linux.beauty>","To":"\"Steven Rostedt\" <rostedt@goodmis.org>","Cc":"\"Zhang Yi\" <yi.zhang@huaweicloud.com>, \"Theodore Ts'o\" <tytso@mit.edu>,\n\t\"Andreas Dilger\" <adilger.kernel@dilger.ca>,\n\t\"Masami Hiramatsu\" <mhiramat@kernel.org>,\n\t\"Mathieu Desnoyers\" <mathieu.desnoyers@efficios.com>,\n\t\"linux-ext4\" <linux-ext4@vger.kernel.org>,\n\t\"linux-kernel\" <linux-kernel@vger.kernel.org>,\n\t\"linux-trace-kernel\" <linux-trace-kernel@vger.kernel.org>","Message-ID":"<19bff57d732.675dda83304172.1851572061101730667@linux.beauty>","In-Reply-To":"<20260123125737.2b6ddbbe@gandalf.local.home>","References":"<20260120112538.132774-1-me@linux.beauty>\n\t<20260120112538.132774-7-me@linux.beauty>\n <20260123125737.2b6ddbbe@gandalf.local.home>","Subject":"Re: [RFC v4 6/7] ext4: fast commit: add lock_updates tracepoint","Precedence":"bulk","X-Mailing-List":"linux-ext4@vger.kernel.org","List-Id":"<linux-ext4.vger.kernel.org>","List-Subscribe":"<mailto:linux-ext4+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-ext4+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","Importance":"Medium","User-Agent":"Zoho Mail","X-Mailer":"Zoho Mail","X-Spam-Status":"No, score=-1.2 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DMARC_MISSING,\n\tHEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,\n\tSPF_PASS autolearn=disabled version=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org"}}]