NFS: fix return value of nfs_pagein_one/nfs_flush_one
Peng Tao [Fri, 15 Jul 2011 07:33:42 +0000 (03:33 -0400)]
Signed-off-by: Peng Tao <peng_tao@emc.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

fs/nfs/read.c
fs/nfs/write.c

index 248a554..581534a 100644 (file)
@@ -351,12 +351,13 @@ static int nfs_pagein_one(struct nfs_pageio_descriptor *desc)
        struct nfs_read_data    *data;
        struct list_head *head = &desc->pg_list;
        struct pnfs_layout_segment *lseg = desc->pg_lseg;
-       int ret = -ENOMEM;
+       int ret = 0;
 
        data = nfs_readdata_alloc(nfs_page_array_len(desc->pg_base,
                                                     desc->pg_count));
        if (!data) {
                nfs_async_read_error(head);
+               ret = -ENOMEM;
                goto out;
        }
 
index 0aeb09b..d9dd744 100644 (file)
@@ -1006,7 +1006,7 @@ static int nfs_flush_one(struct nfs_pageio_descriptor *desc)
        struct nfs_write_data   *data;
        struct list_head *head = &desc->pg_list;
        struct pnfs_layout_segment *lseg = desc->pg_lseg;
-       int ret;
+       int ret = 0;
 
        data = nfs_writedata_alloc(nfs_page_array_len(desc->pg_base,
                                                      desc->pg_count));