diff options
author | Dmitriy Monakhov <dmonakhov@openvz.org> | 2007-02-16 01:27:18 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-16 08:13:56 -0800 |
commit | beb497ab48b1639282129f7bc18fef311fffff3d (patch) | |
tree | bd7852757e908eb3702eeb214556c2538abf4ded /fs | |
parent | fb4d64e78ceab77cf20f7796f74aa10ebe862032 (diff) | |
download | linux-beb497ab48b1639282129f7bc18fef311fffff3d.tar.gz linux-beb497ab48b1639282129f7bc18fef311fffff3d.tar.bz2 linux-beb497ab48b1639282129f7bc18fef311fffff3d.zip |
[PATCH] __page_symlink retry loop error code fix
If prepare_write or commit_write return AOP_TRUNCATED_PAGE we jump to
"retry" label and than if find_or_create_page() failed function return
incorrect error code.
Signed-off-by: Dmitriy Monakhov <dmonakhov@openvz.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/namei.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/namei.c b/fs/namei.c index 161e2225c757..ee60cc4d3453 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -2688,10 +2688,11 @@ int __page_symlink(struct inode *inode, const char *symname, int len, { struct address_space *mapping = inode->i_mapping; struct page *page; - int err = -ENOMEM; + int err; char *kaddr; retry: + err = -ENOMEM; page = find_or_create_page(mapping, 0, gfp_mask); if (!page) goto fail; |