iov_iter: transparently handle compat iovecs in import_iovec
[linux-2.6-block.git] / net / compat.c
index 703acb51c698aa9c3cb65b5b65e107c240d60c5f..ddd15af3a2837b3b34261d66dfbab4b9e1b81972 100644 (file)
@@ -98,8 +98,8 @@ int get_compat_msghdr(struct msghdr *kmsg,
        if (err)
                return err;
 
-       err = compat_import_iovec(save_addr ? READ : WRITE, compat_ptr(ptr),
-                                  len, UIO_FASTIOV, iov, &kmsg->msg_iter);
+       err = import_iovec(save_addr ? READ : WRITE, compat_ptr(ptr), len,
+                          UIO_FASTIOV, iov, &kmsg->msg_iter);
        return err < 0 ? err : 0;
 }
 
@@ -294,7 +294,7 @@ void scm_detach_fds_compat(struct msghdr *msg, struct scm_cookie *scm)
                (struct compat_cmsghdr __user *)msg->msg_control;
        unsigned int o_flags = (msg->msg_flags & MSG_CMSG_CLOEXEC) ? O_CLOEXEC : 0;
        int fdmax = min_t(int, scm_max_fds_compat(msg), scm->fp->count);
-       int __user *cmsg_data = CMSG_USER_DATA(cm);
+       int __user *cmsg_data = CMSG_COMPAT_DATA(cm);
        int err = 0, i;
 
        for (i = 0; i < fdmax; i++) {