summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2007-04-23 23:08:24 +0400
committerArnd Bergmann <arnd@klappe.arndb.de>2007-04-23 23:18:58 +0400
commitd3764397d07b1e03943edfdcc3fb77af7bdac02b (patch)
treec68fdc9fb4dd0eb02880b264a154b132c16c4983
parentf11f5ee70f48899506514e5e0d10ee2c8ddd359a (diff)
downloadlinux-d3764397d07b1e03943edfdcc3fb77af7bdac02b.tar.xz
[POWERPC] spufs: Minor cleanup of spu_wait
Change the loop in spu_wait to be a little more straightforward. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
-rw-r--r--arch/powerpc/platforms/cell/spufs/spufs.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/spufs.h b/arch/powerpc/platforms/cell/spufs/spufs.h
index dd5fc6494ecf..0a947fd7de57 100644
--- a/arch/powerpc/platforms/cell/spufs/spufs.h
+++ b/arch/powerpc/platforms/cell/spufs/spufs.h
@@ -223,14 +223,13 @@ extern char *isolated_loader;
prepare_to_wait(&(wq), &__wait, TASK_INTERRUPTIBLE); \
if (condition) \
break; \
- if (!signal_pending(current)) { \
- spu_release(ctx); \
- schedule(); \
- spu_acquire(ctx); \
- continue; \
+ if (signal_pending(current)) { \
+ __ret = -ERESTARTSYS; \
+ break; \
} \
- __ret = -ERESTARTSYS; \
- break; \
+ spu_release(ctx); \
+ schedule(); \
+ spu_acquire(ctx); \
} \
finish_wait(&(wq), &__wait); \
__ret; \