diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2014-04-03 22:44:19 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2014-04-12 06:51:51 -0400 |
commit | eab87235c0f5979503a547f836a93a3d327c4201 (patch) | |
tree | 5cb00bebe96adfe0b25694cca7b93a77473fc3a7 | |
parent | ccad2365668f12336dd497d9039e8584af836070 (diff) | |
download | linux-stable-eab87235c0f5979503a547f836a93a3d327c4201.tar.gz linux-stable-eab87235c0f5979503a547f836a93a3d327c4201.tar.bz2 linux-stable-eab87235c0f5979503a547f836a93a3d327c4201.zip |
ceph_sync_{,direct_}write: fix an oops on ceph_osdc_new_request() failure
ceph_osdc_put_request(ERR_PTR(-error)) oopses. What we want there
is break, not goto out.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | fs/ceph/file.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/ceph/file.c b/fs/ceph/file.c index 2d9088b1bcd9..359805b671b9 100644 --- a/fs/ceph/file.c +++ b/fs/ceph/file.c @@ -600,7 +600,7 @@ ceph_sync_direct_write(struct kiocb *iocb, const struct iovec *iov, false); if (IS_ERR(req)) { ret = PTR_ERR(req); - goto out; + break; } num_pages = calc_pages_for(page_align, len); @@ -718,7 +718,7 @@ static ssize_t ceph_sync_write(struct kiocb *iocb, const struct iovec *iov, false); if (IS_ERR(req)) { ret = PTR_ERR(req); - goto out; + break; } /* |