lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 31 Aug 2022 10:01:00 +0800 From: Zeng Heng <zengheng4@...wei.com> To: Eric Sandeen <sandeen@...deen.net> CC: <linux-xfs@...r.kernel.org>, <linux-kernel@...r.kernel.org>, <djwong@...nel.org> Subject: Re: [PATCH -next] xfs: remove "%Ld" which doesn't meet C standard You're right, I would take the opinion into v2 and loop you. 在 2022/8/30 22:51, Eric Sandeen 写道: > On 8/30/22 8:54 AM, Zeng Heng wrote: >> The "%Ld" specifier, which represents long long unsigned, >> doesn't meet C language standard, and even more, >> it makes people easily mistake with "%ld", which represent >> long unsigned. So replace "%Ld" with "lld". >> >> Do the same with "%Lu". >> >> Signed-off-by: Zeng Heng <zengheng4@...wei.com> > I think this probably makes sense, but there are many more instances of > %Ld and %Lu in the xfs code, so why change just these 3? > > $ cd fs/xfs > $ grep -r "%Lu\|%Ld" . > ./libxfs/xfs_inode_fork.c: "corrupt inode %Lu (bad size %d for local fork, size = %zd).", > ./libxfs/xfs_inode_fork.c: xfs_warn(mp, "corrupt inode %Lu (btree).", > ./libxfs/xfs_bmap.c: xfs_warn(mp, "%s: thispa(%d) == pp(%d) %Ld", > ./xfs_inode.c: "%s: Bad inode %Lu magic number 0x%x, ptr "PTR_FMT, > ./xfs_inode.c: "%s: Bad regular inode %Lu, ptr "PTR_FMT, > ./xfs_inode.c: "%s: Bad directory inode %Lu, ptr "PTR_FMT, > ./xfs_inode.c: "%s: bad inode %Lu, forkoff 0x%x, ptr "PTR_FMT, > ./xfs_stats.c: len += scnprintf(buf + len, PATH_MAX-len, "xpc %Lu %Lu %Lu\n", > ./cscope/csdb:, "corrupt inode %Lu (btree).", > ./cscope/csdb:", dino bp = "PTR_FMT", ino = %Ld", > ./cscope/csdb:", ino %Ld", > ./cscope/csdb:-len, "xpc %Lu %Lu %Lu\n", > ./xfs_inode_item_recover.c: "%s: Bad inode magic number, dip = "PTR_FMT", dino bp = "PTR_FMT", ino = %Ld", > ./xfs_inode_item_recover.c: "%s: Bad inode log record, rec ptr "PTR_FMT", ino %Ld", > > >> --- >> fs/xfs/xfs_inode_item_recover.c | 4 ++-- >> fs/xfs/xfs_stats.c | 2 +- >> 2 files changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/fs/xfs/xfs_inode_item_recover.c b/fs/xfs/xfs_inode_item_recover.c >> index d28ffaebd067..0e5dba2343ea 100644 >> --- a/fs/xfs/xfs_inode_item_recover.c >> +++ b/fs/xfs/xfs_inode_item_recover.c >> @@ -321,7 +321,7 @@ xlog_recover_inode_commit_pass2( >> */ >> if (XFS_IS_CORRUPT(mp, !xfs_verify_magic16(bp, dip->di_magic))) { >> xfs_alert(mp, >> - "%s: Bad inode magic number, dip = "PTR_FMT", dino bp = "PTR_FMT", ino = %Ld", >> + "%s: Bad inode magic number, dip = "PTR_FMT", dino bp = "PTR_FMT", ino = %lld", >> __func__, dip, bp, in_f->ilf_ino); >> error = -EFSCORRUPTED; >> goto out_release; >> @@ -329,7 +329,7 @@ xlog_recover_inode_commit_pass2( >> ldip = item->ri_buf[1].i_addr; >> if (XFS_IS_CORRUPT(mp, ldip->di_magic != XFS_DINODE_MAGIC)) { >> xfs_alert(mp, >> - "%s: Bad inode log record, rec ptr "PTR_FMT", ino %Ld", >> + "%s: Bad inode log record, rec ptr "PTR_FMT", ino %lld", >> __func__, item, in_f->ilf_ino); >> error = -EFSCORRUPTED; >> goto out_release; >> diff --git a/fs/xfs/xfs_stats.c b/fs/xfs/xfs_stats.c >> index 70d38b77682b..90a77cd3ebad 100644 >> --- a/fs/xfs/xfs_stats.c >> +++ b/fs/xfs/xfs_stats.c >> @@ -74,7 +74,7 @@ int xfs_stats_format(struct xfsstats __percpu *stats, char *buf) >> defer_relog += per_cpu_ptr(stats, i)->s.defer_relog; >> } >> >> - len += scnprintf(buf + len, PATH_MAX-len, "xpc %Lu %Lu %Lu\n", >> + len += scnprintf(buf + len, PATH_MAX-len, "xpc %llu %llu %llu\n", >> xs_xstrat_bytes, xs_write_bytes, xs_read_bytes); >> len += scnprintf(buf + len, PATH_MAX-len, "defer_relog %llu\n", >> defer_relog);
Powered by blists - more mailing lists