aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/powerpc/platforms/cell/spufs/fault.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/fault.c b/arch/powerpc/platforms/cell/spufs/fault.c
index 07f88de0544d..f53a07437472 100644
--- a/arch/powerpc/platforms/cell/spufs/fault.c
+++ b/arch/powerpc/platforms/cell/spufs/fault.c
@@ -74,18 +74,18 @@ good_area:
74 goto bad_area; 74 goto bad_area;
75 } 75 }
76 ret = 0; 76 ret = 0;
77 fault = handle_mm_fault(mm, vma, ea, is_write); 77 *flt = handle_mm_fault(mm, vma, ea, is_write);
78 if (unlikely(fault & VM_FAULT_ERROR)) { 78 if (unlikely(*flt & VM_FAULT_ERROR)) {
79 if (fault & VM_FAULT_OOM) { 79 if (*flt & VM_FAULT_OOM) {
80 ret = -ENOMEM; 80 ret = -ENOMEM;
81 goto bad_area; 81 goto bad_area;
82 } else if (fault & VM_FAULT_SIGBUS) { 82 } else if (*flt & VM_FAULT_SIGBUS) {
83 ret = -EFAULT; 83 ret = -EFAULT;
84 goto bad_area; 84 goto bad_area;
85 } 85 }
86 BUG(); 86 BUG();
87 } 87 }
88 if (fault & VM_FAULT_MAJOR) 88 if (*flt & VM_FAULT_MAJOR)
89 current->maj_flt++; 89 current->maj_flt++;
90 else 90 else
91 current->min_flt++; 91 current->min_flt++;
@@ -210,15 +210,15 @@ int spufs_handle_class1(struct spu_context *ctx)
210 * In case of unhandled error report the problem to user space. 210 * In case of unhandled error report the problem to user space.
211 */ 211 */
212 if (!ret) { 212 if (!ret) {
213 if (flt == VM_FAULT_MINOR) 213 if (flt & VM_FAULT_MAJOR)
214 ctx->stats.min_flt++;
215 else
216 ctx->stats.maj_flt++; 214 ctx->stats.maj_flt++;
215 else
216 ctx->stats.min_flt++;
217 if (ctx->state == SPU_STATE_RUNNABLE) { 217 if (ctx->state == SPU_STATE_RUNNABLE) {
218 if (flt == VM_FAULT_MINOR) 218 if (flt & VM_FAULT_MAJOR)
219 ctx->spu->stats.min_flt++;
220 else
221 ctx->spu->stats.maj_flt++; 219 ctx->spu->stats.maj_flt++;
220 else
221 ctx->spu->stats.min_flt++;
222 } 222 }
223 223
224 if (ctx->spu) 224 if (ctx->spu)