Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71e8cc00 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFS: Ensure that we break out of read/write_schedule_segment on error



Currently we do break out of the for() loop, but we also need to
break out of the enclosing do {} while()...

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
Cc: Fred Isaman <iisaman@netapp.com>
parent 68cd6fa4
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -396,7 +396,7 @@ static ssize_t nfs_direct_read_schedule_segment(struct nfs_pageio_descriptor *de
			pos += req_len;
			count -= req_len;
		}
	} while (count != 0);
	} while (count != 0 && result >= 0);

	kfree(pagevec);

@@ -692,6 +692,7 @@ static ssize_t nfs_direct_write_schedule_segment(struct nfs_pageio_descriptor *d
				nfs_release_request(req);
				nfs_direct_release_pages(pagevec + i,
							 npages - i);
				break;
			}
			pgbase = 0;
			bytes -= req_len;
@@ -700,7 +701,7 @@ static ssize_t nfs_direct_write_schedule_segment(struct nfs_pageio_descriptor *d
			pos += req_len;
			count -= req_len;
		}
	} while (count != 0);
	} while (count != 0 && result >= 0);

	kfree(pagevec);