]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - fs/orangefs/devorangefs-req.c
Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
[mirror_ubuntu-artful-kernel.git] / fs / orangefs / devorangefs-req.c
index 516ffb4dc9a0ad8f6d06b04f25610a445b325ef2..b0ced669427e154cc67c7b4b4f9e4630f934919f 100644 (file)
@@ -355,7 +355,6 @@ static ssize_t orangefs_devreq_write_iter(struct kiocb *iocb,
                __u64 tag;
        } head;
        int total = ret = iov_iter_count(iter);
-       int n;
        int downcall_size = sizeof(struct orangefs_downcall_s);
        int head_size = sizeof(head);
 
@@ -372,8 +371,7 @@ static ssize_t orangefs_devreq_write_iter(struct kiocb *iocb,
                return -EFAULT;
        }
      
-       n = copy_from_iter(&head, head_size, iter);
-       if (n < head_size) {
+       if (!copy_from_iter_full(&head, head_size, iter)) {
                gossip_err("%s: failed to copy head.\n", __func__);
                return -EFAULT;
        }
@@ -407,8 +405,7 @@ static ssize_t orangefs_devreq_write_iter(struct kiocb *iocb,
                return ret;
        }
 
-       n = copy_from_iter(&op->downcall, downcall_size, iter);
-       if (n != downcall_size) {
+       if (!copy_from_iter_full(&op->downcall, downcall_size, iter)) {
                gossip_err("%s: failed to copy downcall.\n", __func__);
                goto Efault;
        }
@@ -462,10 +459,8 @@ static ssize_t orangefs_devreq_write_iter(struct kiocb *iocb,
                goto Enomem;
        }
        memset(op->downcall.trailer_buf, 0, op->downcall.trailer_size);
-       n = copy_from_iter(op->downcall.trailer_buf,
-                          op->downcall.trailer_size,
-                          iter);
-       if (n != op->downcall.trailer_size) {
+       if (!copy_from_iter_full(op->downcall.trailer_buf,
+                                op->downcall.trailer_size, iter)) {
                gossip_err("%s: failed to copy trailer.\n", __func__);
                vfree(op->downcall.trailer_buf);
                goto Efault;