summaryrefslogtreecommitdiffstats
path: root/fs/gfs2/ops_file.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2009-04-20 10:45:54 +0200
committerSteven Whitehouse <swhiteho@redhat.com>2009-04-20 17:02:02 +0200
commite56985da455b9dc0591b8cb2006cc94b6f4fb0f4 (patch)
tree0ae2bf7a5001fbf9fdc9dc027c03e63670303b85 /fs/gfs2/ops_file.c
parentGFS2: Clear dirty bit at end of inode glock sync (diff)
downloadlinux-e56985da455b9dc0591b8cb2006cc94b6f4fb0f4.tar.xz
linux-e56985da455b9dc0591b8cb2006cc94b6f4fb0f4.zip
GFS2: Fix page_mkwrite() return code
This allows for the possibility of returning VM_FAULT_OOM as well as VM_FAULT_SIGBUS. This ensures that the correct action is taken. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/ops_file.c')
-rw-r--r--fs/gfs2/ops_file.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/gfs2/ops_file.c b/fs/gfs2/ops_file.c
index 101caf3ee861..5d82e91887e3 100644
--- a/fs/gfs2/ops_file.c
+++ b/fs/gfs2/ops_file.c
@@ -413,7 +413,9 @@ out_unlock:
gfs2_glock_dq(&gh);
out:
gfs2_holder_uninit(&gh);
- if (ret)
+ if (ret == -ENOMEM)
+ ret = VM_FAULT_OOM;
+ else if (ret)
ret = VM_FAULT_SIGBUS;
return ret;
}