From: Jan Kara <jack@suse.cz>
To: Jeff Layton <jlayton@kernel.org>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>,
Christian Brauner <brauner@kernel.org>, Jan Kara <jack@suse.cz>,
Steven Rostedt <rostedt@goodmis.org>,
Masami Hiramatsu <mhiramat@kernel.org>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
Dan Williams <dan.j.williams@intel.com>,
Matthew Wilcox <willy@infradead.org>,
Eric Biggers <ebiggers@kernel.org>,
"Theodore Y. Ts'o" <tytso@mit.edu>,
Muchun Song <muchun.song@linux.dev>,
Oscar Salvador <osalvador@suse.de>,
David Hildenbrand <david@kernel.org>,
David Howells <dhowells@redhat.com>,
Paulo Alcantara <pc@manguebit.org>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Jan Kara <jack@suse.com>, Jaegeuk Kim <jaegeuk@kernel.org>,
Chao Yu <chao@kernel.org>, Trond Myklebust <trondmy@kernel.org>,
Anna Schumaker <anna@kernel.org>,
Chuck Lever <chuck.lever@oracle.com>, NeilBrown <neil@brown.name>,
Olga Kornievskaia <okorniev@redhat.com>,
Dai Ngo <Dai.Ngo@oracle.com>, Tom Talpey <tom@talpey.com>,
Steve French <sfrench@samba.org>,
Ronnie Sahlberg <ronniesahlberg@gmail.com>,
Shyam Prasad N <sprasad@microsoft.com>,
Bharath SM <bharathsm@microsoft.com>,
Alexander Aring <alex.aring@gmail.com>,
Ryusuke Konishi <konishi.ryusuke@gmail.com>,
Viacheslav Dubeyko <slava@dubeyko.com>,
Eric Van Hensbergen <ericvh@kernel.org>,
Latchesar Ionkov <lucho@ionkov.net>,
Dominique Martinet <asmadeus@codewreck.org>,
Christian Schoenebeck <linux_oss@crudebyte.com>,
David Sterba <dsterba@suse.com>,
Marc Dionne <marc.dionne@auristor.com>,
Ian Kent <raven@themaw.net>,
Luis de Bethencourt <luisbg@kernel.org>,
Salah Triki <salah.triki@gmail.com>,
"Tigran A. Aivazian" <aivazian.tigran@gmail.com>,
Ilya Dryomov <idryomov@gmail.com>,
Alex Markuze <amarkuze@redhat.com>,
Jan Harkes <jaharkes@cs.cmu.edu>,
coda@cs.cmu.edu, Nicolas Pitre <nico@fluxnic.net>,
Tyler Hicks <code@tyhicks.com>,
Amir Goldstein <amir73il@gmail.com>,
Christoph Hellwig <hch@infradead.org>,
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
Yangtao Li <frank.li@vivo.com>,
Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>,
David Woodhouse <dwmw2@infradead.org>,
Richard Weinberger <richard@nod.at>,
Dave Kleikamp <shaggy@kernel.org>,
Konstantin Komarov <almaz.alexandrovich@paragon-software.com>,
Mark Fasheh <mark@fasheh.com>, Joel Becker <jlbec@evilplan.org>,
Joseph Qi <joseph.qi@linux.alibaba.com>,
Mike Marshall <hubcap@omnibond.com>,
Martin Brandenburg <martin@omnibond.com>,
Miklos Szeredi <miklos@szeredi.hu>,
Anders Larsen <al@alarsen.net>,
Zhihao Cheng <chengzhihao1@huawei.com>,
Damien Le Moal <dlemoal@kernel.org>,
Naohiro Aota <naohiro.aota@wdc.com>,
Johannes Thumshirn <jth@kernel.org>,
John Johansen <john.johansen@canonical.com>,
Paul Moore <paul@paul-moore.com>,
James Morris <jmorris@namei.org>,
"Serge E. Hallyn" <serge@hallyn.com>,
Mimi Zohar <zohar@linux.ibm.com>,
Roberto Sassu <roberto.sassu@huawei.com>,
Dmitry Kasatkin <dmitry.kasatkin@gmail.com>,
Eric Snowberg <eric.snowberg@oracle.com>,
Fan Wu <wufan@kernel.org>,
Stephen Smalley <stephen.smalley.work@gmail.com>,
Ondrej Mosnacek <omosnace@redhat.com>,
Casey Schaufler <casey@schaufler-ca.com>,
Alex Deucher <alexander.deucher@amd.com>,
Christian König <christian.koenig@amd.com>,
David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,
Sumit Semwal <sumit.semwal@linaro.org>,
Eric Dumazet <edumazet@google.com>,
Kuniyuki Iwashima <kuniyu@google.com>,
Paolo Abeni <pabeni@redhat.com>,
Willem de Bruijn <willemb@google.com>,
"David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>, Simon Horman <horms@kernel.org>,
Oleg Nesterov <oleg@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Namhyung Kim <namhyung@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>, Ian Rogers <irogers@google.com>,
Adrian Hunter <adrian.hunter@intel.com>,
James Clark <james.clark@linaro.org>,
"Darrick J. Wong" <djwong@kernel.org>,
Martin Schiller <ms@dev.tdt.de>, Eric Paris <eparis@redhat.com>,
Joerg Reuter <jreuter@yaina.de>,
Marcel Holtmann <marcel@holtmann.org>,
Johan Hedberg <johan.hedberg@gmail.com>,
Luiz Augusto von Dentz <luiz.dentz@gmail.com>,
Oliver Hartkopp <socketcan@hartkopp.net>,
Marc Kleine-Budde <mkl@pengutronix.de>,
David Ahern <dsahern@kernel.org>,
Neal Cardwell <ncardwell@google.com>,
Steffen Klassert <steffen.klassert@secunet.com>,
Herbert Xu <herbert@gondor.apana.org.au>,
Remi Denis-Courmont <courmisch@gmail.com>,
Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>,
Xin Long <lucien.xin@gmail.com>,
Magnus Karlsson <magnus.karlsson@intel.com>,
Maciej Fijalkowski <maciej.fijalkowski@intel.com>,
Stanislav Fomichev <sdf@fomichev.me>,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Jesper Dangaard Brouer <hawk@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-trace-kernel@vger.kernel.org, nvdimm@lists.linux.dev,
fsverity@lists.linux.dev, linux-mm@kvack.org,
netfs@lists.linux.dev, linux-ext4@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
linux-nfs@vger.kernel.org, linux-cifs@vger.kernel.org,
samba-technical@lists.samba.org, linux-nilfs@vger.kernel.org,
v9fs@lists.linux.dev, linux-afs@lists.infradead.org,
autofs@vger.kernel.org, ceph-devel@vger.kernel.org,
codalist@coda.cs.cmu.edu, ecryptfs@vger.kernel.org,
linux-mtd@lists.infradead.org,
jfs-discussion@lists.sourceforge.net, ntfs3@lists.linux.dev,
ocfs2-devel@lists.linux.dev, devel@lists.orangefs.org,
linux-unionfs@vger.kernel.org, apparmor@lists.ubuntu.com,
linux-security-module@vger.kernel.org,
linux-integrity@vger.kernel.org, selinux@vger.kernel.org,
amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org,
netdev@vger.kernel.org, linux-perf-users@vger.kernel.org,
linux-fscrypt@vger.kernel.org, linux-xfs@vger.kernel.org,
linux-hams@vger.kernel.org, linux-x25@vger.kernel.org,
audit@vger.kernel.org, linux-bluetooth@vger.kernel.org,
linux-can@vger.kernel.org, linux-sctp@vger.kernel.org,
bpf@vger.kernel.org
Subject: Re: [PATCH v2 040/110] ocfs2: use PRIino format for i_ino
Date: Tue, 3 Mar 2026 12:26:14 +0100 [thread overview]
Message-ID: <ssizzrk2zdfrfzppx75xewimgzg5rd3ofunrxa2vvrh5fmroul@rntxparm3irs> (raw)
In-Reply-To: <20260302-iino-u64-v2-40-e5388800dae0@kernel.org>
On Mon 02-03-26 15:24:24, Jeff Layton wrote:
> Convert ocfs2 i_ino format strings to use the PRIino format
> macro in preparation for the widening of i_ino via kino_t.
>
> Remove now-unnecessary (unsigned long) casts on i_ino.
>
> Signed-off-by: Jeff Layton <jlayton@kernel.org>
Looks good. Feel free to add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/ocfs2/alloc.c | 2 +-
> fs/ocfs2/aops.c | 4 ++--
> fs/ocfs2/dir.c | 8 ++++----
> fs/ocfs2/dlmfs/dlmfs.c | 10 +++++-----
> fs/ocfs2/extent_map.c | 12 ++++++------
> fs/ocfs2/inode.c | 2 +-
> fs/ocfs2/quota_local.c | 2 +-
> fs/ocfs2/refcounttree.c | 10 +++++-----
> fs/ocfs2/xattr.c | 4 ++--
> 9 files changed, 27 insertions(+), 27 deletions(-)
>
> diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
> index 344fd4d95fbc8bd7a749e9d51d31b5682ff030d0..d7703549645b548d9f5d77b2214a9a7c0af0ef6f 100644
> --- a/fs/ocfs2/alloc.c
> +++ b/fs/ocfs2/alloc.c
> @@ -7318,7 +7318,7 @@ int ocfs2_commit_truncate(struct ocfs2_super *osb,
> * to check it up here before changing the tree.
> */
> if (root_el->l_tree_depth && rec->e_int_clusters == 0) {
> - mlog(ML_ERROR, "Inode %lu has an empty "
> + mlog(ML_ERROR, "Inode %" PRIino "u has an empty "
> "extent record, depth %u\n", inode->i_ino,
> le16_to_cpu(root_el->l_tree_depth));
> status = ocfs2_remove_rightmost_empty_extent(osb,
> diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
> index 17ba79f443ee736cb5225702c57d13f4019f3c52..aea35b1c9fa3ce7327672c1862d0d1201c895c40 100644
> --- a/fs/ocfs2/aops.c
> +++ b/fs/ocfs2/aops.c
> @@ -137,7 +137,7 @@ int ocfs2_get_block(struct inode *inode, sector_t iblock,
> (unsigned long long)iblock, bh_result, create);
>
> if (OCFS2_I(inode)->ip_flags & OCFS2_INODE_SYSTEM_FILE)
> - mlog(ML_NOTICE, "get_block on system inode 0x%p (%lu)\n",
> + mlog(ML_NOTICE, "get_block on system inode 0x%p (%" PRIino "u)\n",
> inode, inode->i_ino);
>
> if (S_ISLNK(inode->i_mode)) {
> @@ -2146,7 +2146,7 @@ static int ocfs2_dio_wr_get_block(struct inode *inode, sector_t iblock,
> ((iblock + ((len - 1) >> i_blkbits)) > endblk))
> len = (endblk - iblock + 1) << i_blkbits;
>
> - mlog(0, "get block of %lu at %llu:%u req %u\n",
> + mlog(0, "get block of %" PRIino "u at %llu:%u req %u\n",
> inode->i_ino, pos, len, total_len);
>
> /*
> diff --git a/fs/ocfs2/dir.c b/fs/ocfs2/dir.c
> index 1c8abf2c592caacbe734d49254b04d507925c9d1..eecb2b1d2ec17fb4b3f09abb9e168d2f28f9b420 100644
> --- a/fs/ocfs2/dir.c
> +++ b/fs/ocfs2/dir.c
> @@ -794,7 +794,7 @@ static int ocfs2_dx_dir_lookup_rec(struct inode *inode,
> if (le16_to_cpu(el->l_count) !=
> ocfs2_extent_recs_per_dx_root(inode->i_sb)) {
> ret = ocfs2_error(inode->i_sb,
> - "Inode %lu has invalid extent list length %u\n",
> + "Inode %" PRIino "u has invalid extent list length %u\n",
> inode->i_ino, le16_to_cpu(el->l_count));
> goto out;
> }
> @@ -812,7 +812,7 @@ static int ocfs2_dx_dir_lookup_rec(struct inode *inode,
>
> if (el->l_tree_depth) {
> ret = ocfs2_error(inode->i_sb,
> - "Inode %lu has non zero tree depth in btree tree block %llu\n",
> + "Inode %" PRIino "u has non zero tree depth in btree tree block %llu\n",
> inode->i_ino,
> (unsigned long long)eb_bh->b_blocknr);
> goto out;
> @@ -821,7 +821,7 @@ static int ocfs2_dx_dir_lookup_rec(struct inode *inode,
>
> if (le16_to_cpu(el->l_next_free_rec) == 0) {
> ret = ocfs2_error(inode->i_sb,
> - "Inode %lu has empty extent list at depth %u\n",
> + "Inode %" PRIino "u has empty extent list at depth %u\n",
> inode->i_ino,
> le16_to_cpu(el->l_tree_depth));
> goto out;
> @@ -839,7 +839,7 @@ static int ocfs2_dx_dir_lookup_rec(struct inode *inode,
>
> if (!found) {
> ret = ocfs2_error(inode->i_sb,
> - "Inode %lu has bad extent record (%u, %u, 0) in btree\n",
> + "Inode %" PRIino "u has bad extent record (%u, %u, 0) in btree\n",
> inode->i_ino,
> le32_to_cpu(rec->e_cpos),
> ocfs2_rec_clusters(el, rec));
> diff --git a/fs/ocfs2/dlmfs/dlmfs.c b/fs/ocfs2/dlmfs/dlmfs.c
> index 45cce261da65cab7ef48b5b88c0de5d41fa57615..e96c1c574ff7dc3dffad58ce8536b7e337d3f6fa 100644
> --- a/fs/ocfs2/dlmfs/dlmfs.c
> +++ b/fs/ocfs2/dlmfs/dlmfs.c
> @@ -123,7 +123,7 @@ static int dlmfs_file_open(struct inode *inode,
> if (S_ISDIR(inode->i_mode))
> BUG();
>
> - mlog(0, "open called on inode %lu, flags 0x%x\n", inode->i_ino,
> + mlog(0, "open called on inode %" PRIino "u, flags 0x%x\n", inode->i_ino,
> file->f_flags);
>
> status = dlmfs_decode_open_flags(file->f_flags, &level, &flags);
> @@ -170,7 +170,7 @@ static int dlmfs_file_release(struct inode *inode,
> if (S_ISDIR(inode->i_mode))
> BUG();
>
> - mlog(0, "close called on inode %lu\n", inode->i_ino);
> + mlog(0, "close called on inode %" PRIino "u\n", inode->i_ino);
>
> if (fp) {
> level = fp->fp_lock_level;
> @@ -242,7 +242,7 @@ static ssize_t dlmfs_file_write(struct file *filp,
> int bytes_left;
> struct inode *inode = file_inode(filp);
>
> - mlog(0, "inode %lu, count = %zu, *ppos = %llu\n",
> + mlog(0, "inode %" PRIino "u, count = %zu, *ppos = %llu\n",
> inode->i_ino, count, *ppos);
>
> if (*ppos >= DLM_LVB_LEN)
> @@ -301,7 +301,7 @@ static void dlmfs_evict_inode(struct inode *inode)
>
> clear_inode(inode);
>
> - mlog(0, "inode %lu\n", inode->i_ino);
> + mlog(0, "inode %" PRIino "u\n", inode->i_ino);
>
> ip = DLMFS_I(inode);
> lockres = &ip->ip_lockres;
> @@ -490,7 +490,7 @@ static int dlmfs_unlink(struct inode *dir,
> int status;
> struct inode *inode = d_inode(dentry);
>
> - mlog(0, "unlink inode %lu\n", inode->i_ino);
> + mlog(0, "unlink inode %" PRIino "u\n", inode->i_ino);
>
> /* if there are no current holders, or none that are waiting
> * to acquire a lock, this basically destroys our lockres. */
> diff --git a/fs/ocfs2/extent_map.c b/fs/ocfs2/extent_map.c
> index d68229422dda3423971d7ab0e9a4335acab8b344..3cf93a08f7a8946810ccd2de246be4d07a23b53b 100644
> --- a/fs/ocfs2/extent_map.c
> +++ b/fs/ocfs2/extent_map.c
> @@ -291,7 +291,7 @@ static int ocfs2_last_eb_is_empty(struct inode *inode,
>
> if (el->l_tree_depth) {
> ocfs2_error(inode->i_sb,
> - "Inode %lu has non zero tree depth in leaf block %llu\n",
> + "Inode %" PRIino "u has non zero tree depth in leaf block %llu\n",
> inode->i_ino,
> (unsigned long long)eb_bh->b_blocknr);
> ret = -EROFS;
> @@ -427,7 +427,7 @@ static int ocfs2_get_clusters_nocache(struct inode *inode,
>
> if (el->l_tree_depth) {
> ocfs2_error(inode->i_sb,
> - "Inode %lu has non zero tree depth in leaf block %llu\n",
> + "Inode %" PRIino "u has non zero tree depth in leaf block %llu\n",
> inode->i_ino,
> (unsigned long long)eb_bh->b_blocknr);
> ret = -EROFS;
> @@ -437,7 +437,7 @@ static int ocfs2_get_clusters_nocache(struct inode *inode,
>
> if (le16_to_cpu(el->l_next_free_rec) > le16_to_cpu(el->l_count)) {
> ocfs2_error(inode->i_sb,
> - "Inode %lu has an invalid extent (next_free_rec %u, count %u)\n",
> + "Inode %" PRIino "u has an invalid extent (next_free_rec %u, count %u)\n",
> inode->i_ino,
> le16_to_cpu(el->l_next_free_rec),
> le16_to_cpu(el->l_count));
> @@ -472,7 +472,7 @@ static int ocfs2_get_clusters_nocache(struct inode *inode,
>
> if (!rec->e_blkno) {
> ocfs2_error(inode->i_sb,
> - "Inode %lu has bad extent record (%u, %u, 0)\n",
> + "Inode %" PRIino "u has bad extent record (%u, %u, 0)\n",
> inode->i_ino,
> le32_to_cpu(rec->e_cpos),
> ocfs2_rec_clusters(el, rec));
> @@ -561,7 +561,7 @@ int ocfs2_xattr_get_clusters(struct inode *inode, u32 v_cluster,
>
> if (el->l_tree_depth) {
> ocfs2_error(inode->i_sb,
> - "Inode %lu has non zero tree depth in xattr leaf block %llu\n",
> + "Inode %" PRIino "u has non zero tree depth in xattr leaf block %llu\n",
> inode->i_ino,
> (unsigned long long)eb_bh->b_blocknr);
> ret = -EROFS;
> @@ -580,7 +580,7 @@ int ocfs2_xattr_get_clusters(struct inode *inode, u32 v_cluster,
>
> if (!rec->e_blkno) {
> ocfs2_error(inode->i_sb,
> - "Inode %lu has bad extent record (%u, %u, 0) in xattr\n",
> + "Inode %" PRIino "u has bad extent record (%u, %u, 0) in xattr\n",
> inode->i_ino,
> le32_to_cpu(rec->e_cpos),
> ocfs2_rec_clusters(el, rec));
> diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c
> index 03a51662ea8e79f7a64fcd320b974f954b2ea8bf..c3076b450de3599291c386ceeb8b2d26e8680904 100644
> --- a/fs/ocfs2/inode.c
> +++ b/fs/ocfs2/inode.c
> @@ -1196,7 +1196,7 @@ static void ocfs2_clear_inode(struct inode *inode)
> inode->i_nlink);
>
> mlog_bug_on_msg(osb == NULL,
> - "Inode=%lu\n", inode->i_ino);
> + "Inode=%" PRIino "u\n", inode->i_ino);
>
> dquot_drop(inode);
>
> diff --git a/fs/ocfs2/quota_local.c b/fs/ocfs2/quota_local.c
> index c4e0117d8977807dd6f0f4df64e1ddf72a62ea09..269b0f27d5679aba317059b245ee4bf4f5580eca 100644
> --- a/fs/ocfs2/quota_local.c
> +++ b/fs/ocfs2/quota_local.c
> @@ -471,7 +471,7 @@ static int ocfs2_recover_local_quota_file(struct inode *lqinode,
> qsize_t spacechange, inodechange;
> unsigned int memalloc;
>
> - trace_ocfs2_recover_local_quota_file((unsigned long)lqinode->i_ino, type);
> + trace_ocfs2_recover_local_quota_file(lqinode->i_ino, type);
>
> list_for_each_entry_safe(rchunk, next, &(rec->r_list[type]), rc_list) {
> chunk = rchunk->rc_chunk;
> diff --git a/fs/ocfs2/refcounttree.c b/fs/ocfs2/refcounttree.c
> index c1cdececdfa4ef51a1bd3a5addad734b324b92c0..1586c42fdabe70056bf7f103d583dd9000fe9510 100644
> --- a/fs/ocfs2/refcounttree.c
> +++ b/fs/ocfs2/refcounttree.c
> @@ -2341,7 +2341,7 @@ static int ocfs2_mark_extent_refcounted(struct inode *inode,
> cpos, len, phys);
>
> if (!ocfs2_refcount_tree(OCFS2_SB(inode->i_sb))) {
> - ret = ocfs2_error(inode->i_sb, "Inode %lu want to use refcount tree, but the feature bit is not set in the super block\n",
> + ret = ocfs2_error(inode->i_sb, "Inode %" PRIino "u want to use refcount tree, but the feature bit is not set in the super block\n",
> inode->i_ino);
> goto out;
> }
> @@ -2524,7 +2524,7 @@ int ocfs2_prepare_refcount_change_for_del(struct inode *inode,
> u64 start_cpos = ocfs2_blocks_to_clusters(inode->i_sb, phys_blkno);
>
> if (!ocfs2_refcount_tree(OCFS2_SB(inode->i_sb))) {
> - ret = ocfs2_error(inode->i_sb, "Inode %lu want to use refcount tree, but the feature bit is not set in the super block\n",
> + ret = ocfs2_error(inode->i_sb, "Inode %" PRIino "u want to use refcount tree, but the feature bit is not set in the super block\n",
> inode->i_ino);
> goto out;
> }
> @@ -2650,7 +2650,7 @@ static int ocfs2_refcount_cal_cow_clusters(struct inode *inode,
>
> if (el->l_tree_depth) {
> ret = ocfs2_error(inode->i_sb,
> - "Inode %lu has non zero tree depth in leaf block %llu\n",
> + "Inode %" PRIino "u has non zero tree depth in leaf block %llu\n",
> inode->i_ino,
> (unsigned long long)eb_bh->b_blocknr);
> goto out;
> @@ -2662,7 +2662,7 @@ static int ocfs2_refcount_cal_cow_clusters(struct inode *inode,
> rec = &el->l_recs[i];
>
> if (ocfs2_is_empty_extent(rec)) {
> - mlog_bug_on_msg(i != 0, "Inode %lu has empty record in "
> + mlog_bug_on_msg(i != 0, "Inode %" PRIino "u has empty record in "
> "index %d\n", inode->i_ino, i);
> continue;
> }
> @@ -3325,7 +3325,7 @@ static int ocfs2_replace_cow(struct ocfs2_cow_context *context)
> struct ocfs2_super *osb = OCFS2_SB(inode->i_sb);
>
> if (!ocfs2_refcount_tree(osb)) {
> - return ocfs2_error(inode->i_sb, "Inode %lu want to use refcount tree, but the feature bit is not set in the super block\n",
> + return ocfs2_error(inode->i_sb, "Inode %" PRIino "u want to use refcount tree, but the feature bit is not set in the super block\n",
> inode->i_ino);
> }
>
> diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c
> index 42ee5db362d3eb6df886d6721dd7398b8aca8cdb..74cd6dd57abf71a69adef18863d057e48496ccfe 100644
> --- a/fs/ocfs2/xattr.c
> +++ b/fs/ocfs2/xattr.c
> @@ -3741,7 +3741,7 @@ static int ocfs2_xattr_get_rec(struct inode *inode,
>
> if (el->l_tree_depth) {
> ret = ocfs2_error(inode->i_sb,
> - "Inode %lu has non zero tree depth in xattr tree block %llu\n",
> + "Inode %" PRIino "u has non zero tree depth in xattr tree block %llu\n",
> inode->i_ino,
> (unsigned long long)eb_bh->b_blocknr);
> goto out;
> @@ -3758,7 +3758,7 @@ static int ocfs2_xattr_get_rec(struct inode *inode,
> }
>
> if (!e_blkno) {
> - ret = ocfs2_error(inode->i_sb, "Inode %lu has bad extent record (%u, %u, 0) in xattr\n",
> + ret = ocfs2_error(inode->i_sb, "Inode %" PRIino "u has bad extent record (%u, %u, 0) in xattr\n",
> inode->i_ino,
> le32_to_cpu(rec->e_cpos),
> ocfs2_rec_clusters(el, rec));
>
> --
> 2.53.0
>
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
next prev parent reply other threads:[~2026-03-03 11:36 UTC|newest]
Thread overview: 177+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-02 20:23 [PATCH v2 000/110] vfs: change inode->i_ino from unsigned long to u64 Jeff Layton
2026-03-02 20:23 ` [PATCH v2 001/110] vfs: introduce kino_t typedef and PRIino format macro Jeff Layton
2026-03-03 1:25 ` Theodore Tso
2026-03-03 4:25 ` Darrick J. Wong
2026-03-03 10:53 ` Jeff Layton
[not found] ` <aabkBadGzo7IZpSU@infradead.org>
2026-03-03 13:43 ` Jeff Layton
[not found] ` <aabpPQxCTweoTp8Z@infradead.org>
2026-03-03 14:19 ` Jeff Layton
[not found] ` <aabwflLfe2HcGv7X@infradead.org>
2026-03-03 15:14 ` Jeff Layton
2026-03-03 15:16 ` Theodore Tso
2026-03-03 15:25 ` Jeff Layton
2026-03-03 10:52 ` Jeff Layton
2026-03-03 11:00 ` Jan Kara
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 002/110] vfs: widen inode hash/lookup functions to u64 Jeff Layton
2026-03-03 10:59 ` Jan Kara
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 003/110] audit: widen ino fields " Jeff Layton
2026-03-02 23:44 ` Paul Moore
2026-03-03 11:04 ` Jeff Layton
2026-03-03 16:03 ` Paul Moore
2026-03-03 16:12 ` Jeff Layton
2026-03-03 16:17 ` Paul Moore
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 004/110] net: change sock.sk_ino and sock_i_ino() " Jeff Layton
2026-03-03 10:03 ` Marc Kleine-Budde
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 005/110] trace: store i_ino as u64 instead of ino_t/unsigned long Jeff Layton
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 006/110] trace: reorder TP_STRUCT__entry fields for better packing on 32-bit Jeff Layton
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 007/110] ext4: use PRIino format for i_ino Jeff Layton
2026-03-03 11:20 ` Jan Kara
2026-03-03 11:41 ` Jeff Layton
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:23 ` [PATCH v2 008/110] jbd2: " Jeff Layton
2026-03-03 11:21 ` Jan Kara
2026-03-02 20:23 ` [PATCH v2 009/110] f2fs: " Jeff Layton
2026-03-02 20:23 ` [PATCH v2 010/110] lockd: " Jeff Layton
2026-03-02 20:23 ` [PATCH v2 011/110] nfs: " Jeff Layton
2026-03-02 20:23 ` [PATCH v2 012/110] nfsd: " Jeff Layton
2026-03-02 20:23 ` [PATCH v2 013/110] locks: " Jeff Layton
2026-03-02 20:23 ` [PATCH v2 014/110] proc: " Jeff Layton
2026-03-03 11:22 ` Jan Kara
2026-03-02 20:23 ` [PATCH v2 015/110] nilfs2: " Jeff Layton
2026-03-02 22:34 ` Viacheslav Dubeyko
2026-03-02 20:24 ` [PATCH v2 016/110] 9p: " Jeff Layton
2026-03-03 11:52 ` Christian Schoenebeck
2026-03-02 20:24 ` [PATCH v2 017/110] affs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 018/110] afs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 019/110] autofs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 020/110] befs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 021/110] bfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 022/110] cachefiles: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 023/110] ceph: " Jeff Layton
2026-03-02 22:24 ` Viacheslav Dubeyko
2026-03-02 20:24 ` [PATCH v2 024/110] coda: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 025/110] cramfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 026/110] ecryptfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 027/110] efs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 028/110] exportfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 029/110] ext2: " Jeff Layton
2026-03-03 11:24 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 030/110] freevxfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 031/110] hfs: " Jeff Layton
2026-03-02 22:26 ` Viacheslav Dubeyko
2026-03-02 20:24 ` [PATCH v2 032/110] hfsplus: " Jeff Layton
2026-03-02 22:36 ` Viacheslav Dubeyko
2026-03-02 20:24 ` [PATCH v2 033/110] hpfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 034/110] isofs: " Jeff Layton
2026-03-03 11:24 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 035/110] jffs2: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 036/110] jfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 037/110] minix: " Jeff Layton
2026-03-03 11:25 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 038/110] nsfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 039/110] ntfs3: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 040/110] ocfs2: " Jeff Layton
2026-03-03 11:26 ` Jan Kara [this message]
2026-03-02 20:24 ` [PATCH v2 041/110] orangefs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 042/110] overlayfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 043/110] qnx4: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 044/110] qnx6: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 045/110] ubifs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 046/110] udf: " Jeff Layton
2026-03-03 11:27 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 047/110] ufs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 048/110] zonefs: " Jeff Layton
2026-03-02 22:57 ` Damien Le Moal
2026-03-02 20:24 ` [PATCH v2 049/110] security: " Jeff Layton
2026-03-03 2:28 ` Paul Moore
2026-03-02 20:24 ` [PATCH v2 050/110] drm/amdgpu: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 051/110] fsnotify: " Jeff Layton
2026-03-03 11:27 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 052/110] net: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 053/110] uprobes: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 054/110] dma-buf: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 055/110] fscrypt: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 056/110] fsverity: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 057/110] iomap: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 058/110] net: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 059/110] vfs: " Jeff Layton
2026-03-03 11:28 ` Jan Kara
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:24 ` [PATCH v2 060/110] vfs: change kino_t from unsigned long to u64 Jeff Layton
2026-03-03 11:29 ` Jan Kara
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-02 20:24 ` [PATCH v2 061/110] ext4: replace PRIino with %llu/%llx format strings Jeff Layton
2026-03-03 11:31 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 062/110] jbd2: " Jeff Layton
2026-03-03 11:32 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 063/110] f2fs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 064/110] lockd: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 065/110] nfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 066/110] nfsd: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 067/110] proc: " Jeff Layton
2026-03-03 11:32 ` Jan Kara
2026-03-02 20:24 ` [PATCH v2 068/110] nilfs2: " Jeff Layton
2026-03-02 22:38 ` Viacheslav Dubeyko
2026-03-02 20:24 ` [PATCH v2 069/110] 9p: " Jeff Layton
2026-03-03 12:12 ` Christian Schoenebeck
2026-03-02 20:24 ` [PATCH v2 070/110] affs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 071/110] afs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 072/110] autofs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 073/110] befs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 074/110] bfs: " Jeff Layton
2026-03-02 20:24 ` [PATCH v2 075/110] cachefiles: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 076/110] ceph: " Jeff Layton
2026-03-02 22:39 ` Viacheslav Dubeyko
2026-03-02 20:25 ` [PATCH v2 077/110] coda: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 078/110] cramfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 079/110] ecryptfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 080/110] efs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 081/110] exportfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 082/110] ext2: " Jeff Layton
2026-03-03 11:33 ` Jan Kara
2026-03-02 20:25 ` [PATCH v2 083/110] freevxfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 084/110] hfs: " Jeff Layton
2026-03-02 22:40 ` Viacheslav Dubeyko
2026-03-02 20:25 ` [PATCH v2 085/110] hfsplus: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 086/110] hpfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 087/110] isofs: " Jeff Layton
2026-03-03 11:33 ` Jan Kara
2026-03-02 20:25 ` [PATCH v2 088/110] jffs2: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 089/110] jfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 090/110] minix: " Jeff Layton
2026-03-03 11:35 ` Jan Kara
2026-03-02 20:25 ` [PATCH v2 091/110] ntfs3: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 092/110] ocfs2: " Jeff Layton
2026-03-03 11:34 ` Jan Kara
2026-03-02 20:25 ` [PATCH v2 093/110] orangefs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 094/110] overlayfs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 095/110] qnx4: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 096/110] qnx6: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 097/110] ubifs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 098/110] udf: " Jeff Layton
2026-03-03 11:36 ` Jan Kara
2026-03-02 20:25 ` [PATCH v2 099/110] ufs: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 100/110] zonefs: " Jeff Layton
2026-03-02 22:58 ` Damien Le Moal
2026-03-02 20:25 ` [PATCH v2 101/110] fscrypt: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 102/110] fsverity: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 103/110] iomap: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 104/110] fsnotify: " Jeff Layton
2026-03-03 11:36 ` Jan Kara
2026-03-02 20:25 ` [PATCH v2 105/110] security: " Jeff Layton
2026-03-03 2:30 ` Paul Moore
2026-03-02 20:25 ` [PATCH v2 106/110] drm/amdgpu: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 107/110] dma-buf: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 108/110] net: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 109/110] uprobes: " Jeff Layton
2026-03-02 20:25 ` [PATCH v2 110/110] vfs: remove kino_t typedef and PRIino format macro Jeff Layton
2026-03-03 11:37 ` Jan Kara
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
2026-03-03 10:48 ` [PATCH v2 000/110] vfs: change inode->i_ino from unsigned long to u64 David Howells
2026-03-03 10:55 ` David Howells
2026-03-03 10:58 ` Jeff Layton
2026-03-03 22:15 ` Claude review: " Claude Code Review Bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ssizzrk2zdfrfzppx75xewimgzg5rd3ofunrxa2vvrh5fmroul@rntxparm3irs \
--to=jack@suse.cz \
--cc=Dai.Ngo@oracle.com \
--cc=acme@kernel.org \
--cc=adilger.kernel@dilger.ca \
--cc=adrian.hunter@intel.com \
--cc=airlied@gmail.com \
--cc=aivazian.tigran@gmail.com \
--cc=al@alarsen.net \
--cc=alex.aring@gmail.com \
--cc=alexander.deucher@amd.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=almaz.alexandrovich@paragon-software.com \
--cc=amarkuze@redhat.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=amir73il@gmail.com \
--cc=anna@kernel.org \
--cc=apparmor@lists.ubuntu.com \
--cc=asmadeus@codewreck.org \
--cc=ast@kernel.org \
--cc=audit@vger.kernel.org \
--cc=autofs@vger.kernel.org \
--cc=bharathsm@microsoft.com \
--cc=bpf@vger.kernel.org \
--cc=brauner@kernel.org \
--cc=casey@schaufler-ca.com \
--cc=ceph-devel@vger.kernel.org \
--cc=chao@kernel.org \
--cc=chengzhihao1@huawei.com \
--cc=christian.koenig@amd.com \
--cc=chuck.lever@oracle.com \
--cc=coda@cs.cmu.edu \
--cc=codalist@coda.cs.cmu.edu \
--cc=code@tyhicks.com \
--cc=courmisch@gmail.com \
--cc=dan.j.williams@intel.com \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=david@kernel.org \
--cc=devel@lists.orangefs.org \
--cc=dhowells@redhat.com \
--cc=djwong@kernel.org \
--cc=dlemoal@kernel.org \
--cc=dmitry.kasatkin@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=dsahern@kernel.org \
--cc=dsterba@suse.com \
--cc=dwmw2@infradead.org \
--cc=ebiggers@kernel.org \
--cc=ecryptfs@vger.kernel.org \
--cc=edumazet@google.com \
--cc=eparis@redhat.com \
--cc=eric.snowberg@oracle.com \
--cc=ericvh@kernel.org \
--cc=frank.li@vivo.com \
--cc=fsverity@lists.linux.dev \
--cc=glaubitz@physik.fu-berlin.de \
--cc=hawk@kernel.org \
--cc=hch@infradead.org \
--cc=herbert@gondor.apana.org.au \
--cc=horms@kernel.org \
--cc=hubcap@omnibond.com \
--cc=idryomov@gmail.com \
--cc=irogers@google.com \
--cc=jack@suse.com \
--cc=jaegeuk@kernel.org \
--cc=jaharkes@cs.cmu.edu \
--cc=james.clark@linaro.org \
--cc=jfs-discussion@lists.sourceforge.net \
--cc=jlayton@kernel.org \
--cc=jlbec@evilplan.org \
--cc=jmorris@namei.org \
--cc=johan.hedberg@gmail.com \
--cc=john.fastabend@gmail.com \
--cc=john.johansen@canonical.com \
--cc=jolsa@kernel.org \
--cc=joseph.qi@linux.alibaba.com \
--cc=jreuter@yaina.de \
--cc=jth@kernel.org \
--cc=konishi.ryusuke@gmail.com \
--cc=kuba@kernel.org \
--cc=kuniyu@google.com \
--cc=linaro-mm-sig@lists.linaro.org \
--cc=linux-afs@lists.infradead.org \
--cc=linux-bluetooth@vger.kernel.org \
--cc=linux-can@vger.kernel.org \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-f2fs-devel@lists.sourceforge.net \
--cc=linux-fscrypt@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-hams@vger.kernel.org \
--cc=linux-integrity@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-nilfs@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=linux-sctp@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=linux-unionfs@vger.kernel.org \
--cc=linux-x25@vger.kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=linux_oss@crudebyte.com \
--cc=lucho@ionkov.net \
--cc=lucien.xin@gmail.com \
--cc=luisbg@kernel.org \
--cc=luiz.dentz@gmail.com \
--cc=maciej.fijalkowski@intel.com \
--cc=magnus.karlsson@intel.com \
--cc=marc.dionne@auristor.com \
--cc=marcel@holtmann.org \
--cc=marcelo.leitner@gmail.com \
--cc=mark.rutland@arm.com \
--cc=mark@fasheh.com \
--cc=martin@omnibond.com \
--cc=mathieu.desnoyers@efficios.com \
--cc=mhiramat@kernel.org \
--cc=miklos@szeredi.hu \
--cc=mikulas@artax.karlin.mff.cuni.cz \
--cc=mingo@redhat.com \
--cc=mkl@pengutronix.de \
--cc=ms@dev.tdt.de \
--cc=muchun.song@linux.dev \
--cc=namhyung@kernel.org \
--cc=naohiro.aota@wdc.com \
--cc=ncardwell@google.com \
--cc=neil@brown.name \
--cc=netdev@vger.kernel.org \
--cc=netfs@lists.linux.dev \
--cc=nico@fluxnic.net \
--cc=ntfs3@lists.linux.dev \
--cc=nvdimm@lists.linux.dev \
--cc=ocfs2-devel@lists.linux.dev \
--cc=okorniev@redhat.com \
--cc=oleg@redhat.com \
--cc=omosnace@redhat.com \
--cc=osalvador@suse.de \
--cc=pabeni@redhat.com \
--cc=paul@paul-moore.com \
--cc=pc@manguebit.org \
--cc=peterz@infradead.org \
--cc=raven@themaw.net \
--cc=richard@nod.at \
--cc=roberto.sassu@huawei.com \
--cc=ronniesahlberg@gmail.com \
--cc=rostedt@goodmis.org \
--cc=salah.triki@gmail.com \
--cc=samba-technical@lists.samba.org \
--cc=sdf@fomichev.me \
--cc=selinux@vger.kernel.org \
--cc=serge@hallyn.com \
--cc=sfrench@samba.org \
--cc=shaggy@kernel.org \
--cc=simona@ffwll.ch \
--cc=slava@dubeyko.com \
--cc=socketcan@hartkopp.net \
--cc=sprasad@microsoft.com \
--cc=steffen.klassert@secunet.com \
--cc=stephen.smalley.work@gmail.com \
--cc=sumit.semwal@linaro.org \
--cc=tom@talpey.com \
--cc=trondmy@kernel.org \
--cc=tytso@mit.edu \
--cc=v9fs@lists.linux.dev \
--cc=viro@zeniv.linux.org.uk \
--cc=willemb@google.com \
--cc=willy@infradead.org \
--cc=wufan@kernel.org \
--cc=zohar@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox