diff options
author | Chris Mason <chris.mason@oracle.com> | 2011-11-02 15:48:34 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2011-11-06 03:08:49 -0500 |
commit | 740c3d226cbba6cd6a32adfb66809c94938f3e57 (patch) | |
tree | 375a5d2ee3bdc66f29e69e99c3691c3200407820 /fs/btrfs/ioctl.h | |
parent | 806468f8bf76a3cb2b626dd282946a6c9c0a50f0 (diff) | |
download | op-kernel-dev-740c3d226cbba6cd6a32adfb66809c94938f3e57.zip op-kernel-dev-740c3d226cbba6cd6a32adfb66809c94938f3e57.tar.gz |
Btrfs: fix the new inspection ioctls for 32 bit compat
The new ioctls to follow backrefs are not clean for 32/64 bit
compat. This reworks them for u64s everywhere. They are brand new, so
there are no problems with changing the interface now.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/ioctl.h')
-rw-r--r-- | fs/btrfs/ioctl.h | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/fs/btrfs/ioctl.h b/fs/btrfs/ioctl.h index 2da30d4..252ae99 100644 --- a/fs/btrfs/ioctl.h +++ b/fs/btrfs/ioctl.h @@ -198,24 +198,23 @@ struct btrfs_data_container { __u32 bytes_missing; /* out -- additional bytes needed for result */ __u32 elem_cnt; /* out */ __u32 elem_missed; /* out */ - union { - char *str[0]; /* out */ - __u64 val[0]; /* out */ - }; + __u64 val[0]; /* out */ }; struct btrfs_ioctl_ino_path_args { __u64 inum; /* in */ __u32 size; /* in */ __u64 reserved[4]; - struct btrfs_data_container *fspath; /* out */ + /* struct btrfs_data_container *fspath; out */ + __u64 fspath; /* out */ }; struct btrfs_ioctl_logical_ino_args { __u64 logical; /* in */ __u32 size; /* in */ __u64 reserved[4]; - struct btrfs_data_container *inodes; /* out */ + /* struct btrfs_data_container *inodes; out */ + __u64 inodes; }; #define BTRFS_IOC_SNAP_CREATE _IOW(BTRFS_IOCTL_MAGIC, 1, \ |