usb: ftp: fix the bug of ftp ioctrl args problem with 32bit userspace on 64bit platforms
authorAiyoujun <ayj@rock-chips.com>
Sat, 11 Apr 2015 08:04:31 +0000 (16:04 +0800)
committerAiyoujun <ayj@rock-chips.com>
Sat, 11 Apr 2015 08:14:20 +0000 (16:14 +0800)
Signed-off-by: Aiyoujun <ayj@rock-chips.com>
include/uapi/linux/usb/f_mtp.h

index 503291855abda22a46d4f365259c45accdae11a7..9a08c643ae20574ff29021b71e08e04b529e142c 100644 (file)
@@ -38,12 +38,22 @@ struct mtp_file_range {
        uint32_t        transaction_id;
 };
 
+/* support of 32bit userspace on 64bit platforms */
+#ifdef CONFIG_COMPAT
+struct mtp_event {
+       /* size of the event */
+       int32_t         length;
+       /* event data to send */
+       compat_uptr_t           data;
+};
+#else
 struct mtp_event {
        /* size of the event */
        size_t          length;
        /* event data to send */
        void            *data;
 };
+#endif
 
 /* Sends the specified file range to the host */
 #define MTP_SEND_FILE              _IOW('M', 0, struct mtp_file_range)