I suggest to add an anonymous union and add a u64 member that would
force the type width:

struct btrfs_ioctl_send_args {
         __s64 send_fd;                  /* in */
         __u64 clone_sources_count;      /* in */
        union {
                __u64 __user *clone_sources;    /* in */
                u64 __pointer_alignment;
        };
         __u64 parent_root;              /* in */
         __u64 flags;                    /* in */
         __u64 reserved[4];              /* in */
};

I am no expert, but would this change alone modify the user space ABI of a 
32-bit Linux kernel?
I.e. people in the (presumably currently working) btrfs-send situation (32-bit) 
user space/32-bit kernel
would have to upgrade user space tools and kernel at the same time. Otherwise, 
they will encounter a non-working setup.
I think, my suggested patch does not change any working ABI, and no change to 
the user
space tools are necessary.


Sincerely,

Thomas Rohwer

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to