aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHironori Shiina <shiina.hironori@gmail.com>2022-12-26 10:11:19 -0800
committerTheodore Ts'o <tytso@mit.edu>2023-07-28 00:07:25 -0400
commitef85c48dbc8f22cd0ce99e9f6b0daadb0170fb42 (patch)
tree29090dc152724891bfb255429e0df98bf3b6bd7f
parent087030418b1481eb1ebf77fe41510f5e977b2122 (diff)
downloadxfs-lts-backports-xfs-6.1.tar.gz
xfs: get root inode correctly at bulkstatxfs-6.1
The root inode number should be set to `breq->startino` for getting stat information of the root when XFS_BULK_IREQ_SPECIAL_ROOT is used. Otherwise, the inode search is started from 1 (XFS_BULK_IREQ_SPECIAL_ROOT) and the inode with the lowest number in a filesystem is returned. Fixes: bf3cb3944792 ("xfs: allow single bulkstat of special inodes") Signed-off-by: Hironori Shiina <shiina.hironori@fujitsu.com> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Darrick J. Wong <djwong@kernel.org> (cherry picked from commit 817644fa4525258992f17fecf4f1d6cdd2e1b731)
-rw-r--r--fs/xfs/xfs_ioctl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c
index 1f783e97962968..85fbb3b71d1c67 100644
--- a/fs/xfs/xfs_ioctl.c
+++ b/fs/xfs/xfs_ioctl.c
@@ -754,7 +754,7 @@ xfs_bulkstat_fmt(
static int
xfs_bulk_ireq_setup(
struct xfs_mount *mp,
- struct xfs_bulk_ireq *hdr,
+ const struct xfs_bulk_ireq *hdr,
struct xfs_ibulk *breq,
void __user *ubuffer)
{
@@ -780,7 +780,7 @@ xfs_bulk_ireq_setup(
switch (hdr->ino) {
case XFS_BULK_IREQ_SPECIAL_ROOT:
- hdr->ino = mp->m_sb.sb_rootino;
+ breq->startino = mp->m_sb.sb_rootino;
break;
default:
return -EINVAL;