summaryrefslogtreecommitdiff
path: root/fs/btrfs/ioctl.h
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2011-11-02 15:48:34 -0400
committerChris Mason <chris.mason@oracle.com>2011-11-06 03:08:49 -0500
commit740c3d226cbba6cd6a32adfb66809c94938f3e57 (patch)
tree375a5d2ee3bdc66f29e69e99c3691c3200407820 /fs/btrfs/ioctl.h
parent806468f8bf76a3cb2b626dd282946a6c9c0a50f0 (diff)
downloadlwn-740c3d226cbba6cd6a32adfb66809c94938f3e57.tar.gz
lwn-740c3d226cbba6cd6a32adfb66809c94938f3e57.zip
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.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/fs/btrfs/ioctl.h b/fs/btrfs/ioctl.h
index 2da30d4950e6..252ae9915de8 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, \