From 1b28391f4ab633861b51438b7de3416a6bbf1ddf Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Tue, 3 Mar 2009 19:38:07 +0000 Subject: [PATCH] --- yaml --- r: 138527 b: refs/heads/master c: d219889b769a56901c9a916187ee0af95e6ff8a6 h: refs/heads/master i: 138525: 4d108b6860b6204795e2743c4d14e524a9b44719 138523: 802cbee3ce134174ca573d234279604ff5599e07 138519: 5b7edd76a97e43f6e6e0c386c4edbd138807e44b 138511: f1f52d1c39e6bc66c51f3f40b16ec166c121e1bf 138495: dd4ac4b05883dbdf5573976ce9bbdaffaf978afd v: v3 --- [refs] | 2 +- trunk/arch/powerpc/platforms/cell/spufs/file.c | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 165dab909019..48fb5d790eef 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e7eec2fc27d7dbefd5852c36b3fe6229e6302c99 +refs/heads/master: d219889b769a56901c9a916187ee0af95e6ff8a6 diff --git a/trunk/arch/powerpc/platforms/cell/spufs/file.c b/trunk/arch/powerpc/platforms/cell/spufs/file.c index 9e4f2739341d..be0120d9b50a 100644 --- a/trunk/arch/powerpc/platforms/cell/spufs/file.c +++ b/trunk/arch/powerpc/platforms/cell/spufs/file.c @@ -568,9 +568,10 @@ spufs_regs_write(struct file *file, const char __user *buffer, struct spu_lscsa *lscsa = ctx->csa.lscsa; int ret; - size = min_t(ssize_t, sizeof lscsa->gprs - *pos, size); - if (size <= 0) + if (*pos >= sizeof(lscsa->gprs)) return -EFBIG; + + size = min_t(ssize_t, sizeof(lscsa->gprs) - *pos, size); *pos += size; ret = spu_acquire_saved(ctx); @@ -623,10 +624,11 @@ spufs_fpcr_write(struct file *file, const char __user * buffer, struct spu_lscsa *lscsa = ctx->csa.lscsa; int ret; - size = min_t(ssize_t, sizeof(lscsa->fpcr) - *pos, size); - if (size <= 0) + if (*pos >= sizeof(lscsa->fpcr)) return -EFBIG; + size = min_t(ssize_t, sizeof(lscsa->fpcr) - *pos, size); + ret = spu_acquire_saved(ctx); if (ret) return ret;