aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2008-04-17 23:33:43 -0400
committerPaul Mackerras <paulus@samba.org>2008-04-17 23:33:43 -0400
commit858c52d15f186e055dc33a1872f5b45a66d42296 (patch)
tree512dd225db871ef6e2c8f7f2e1192b46edc158d4
parent771168494719b90621ac61f9ae68c4af494e418f (diff)
parentada397e93d6002021f5bf4ba060aa4ecd5dea3e5 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jk/spufs
-rw-r--r--arch/powerpc/platforms/cell/spufs/coredump.c8
-rw-r--r--arch/powerpc/platforms/cell/spufs/file.c4
-rw-r--r--arch/powerpc/platforms/cell/spufs/run.c4
-rw-r--r--arch/powerpc/platforms/cell/spufs/switch.c2
4 files changed, 13 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/coredump.c b/arch/powerpc/platforms/cell/spufs/coredump.c
index 0c6a96b82b2..b962c3ab470 100644
--- a/arch/powerpc/platforms/cell/spufs/coredump.c
+++ b/arch/powerpc/platforms/cell/spufs/coredump.c
@@ -133,8 +133,6 @@ static struct spu_context *coredump_next_context(int *fd)
133 if (ctx->flags & SPU_CREATE_NOSCHED) 133 if (ctx->flags & SPU_CREATE_NOSCHED)
134 continue; 134 continue;
135 135
136 /* start searching the next fd next time we're called */
137 (*fd)++;
138 break; 136 break;
139 } 137 }
140 138
@@ -157,6 +155,9 @@ int spufs_coredump_extra_notes_size(void)
157 break; 155 break;
158 156
159 size += rc; 157 size += rc;
158
159 /* start searching the next fd next time */
160 fd++;
160 } 161 }
161 162
162 return size; 163 return size;
@@ -239,6 +240,9 @@ int spufs_coredump_extra_notes_write(struct file *file, loff_t *foffset)
239 } 240 }
240 241
241 spu_release_saved(ctx); 242 spu_release_saved(ctx);
243
244 /* start searching the next fd next time */
245 fd++;
242 } 246 }
243 247
244 return 0; 248 return 0;
diff --git a/arch/powerpc/platforms/cell/spufs/file.c b/arch/powerpc/platforms/cell/spufs/file.c
index f14d3a0a861..ba791e931bd 100644
--- a/arch/powerpc/platforms/cell/spufs/file.c
+++ b/arch/powerpc/platforms/cell/spufs/file.c
@@ -1337,7 +1337,7 @@ static u64 spufs_signal1_type_get(struct spu_context *ctx)
1337 return ctx->ops->signal1_type_get(ctx); 1337 return ctx->ops->signal1_type_get(ctx);
1338} 1338}
1339DEFINE_SPUFS_ATTRIBUTE(spufs_signal1_type, spufs_signal1_type_get, 1339DEFINE_SPUFS_ATTRIBUTE(spufs_signal1_type, spufs_signal1_type_get,
1340 spufs_signal1_type_set, "%llu", SPU_ATTR_ACQUIRE); 1340 spufs_signal1_type_set, "%llu\n", SPU_ATTR_ACQUIRE);
1341 1341
1342 1342
1343static int spufs_signal2_type_set(void *data, u64 val) 1343static int spufs_signal2_type_set(void *data, u64 val)
@@ -1359,7 +1359,7 @@ static u64 spufs_signal2_type_get(struct spu_context *ctx)
1359 return ctx->ops->signal2_type_get(ctx); 1359 return ctx->ops->signal2_type_get(ctx);
1360} 1360}
1361DEFINE_SPUFS_ATTRIBUTE(spufs_signal2_type, spufs_signal2_type_get, 1361DEFINE_SPUFS_ATTRIBUTE(spufs_signal2_type, spufs_signal2_type_get,
1362 spufs_signal2_type_set, "%llu", SPU_ATTR_ACQUIRE); 1362 spufs_signal2_type_set, "%llu\n", SPU_ATTR_ACQUIRE);
1363 1363
1364#if SPUFS_MMAP_4K 1364#if SPUFS_MMAP_4K
1365static unsigned long spufs_mss_mmap_nopfn(struct vm_area_struct *vma, 1365static unsigned long spufs_mss_mmap_nopfn(struct vm_area_struct *vma,
diff --git a/arch/powerpc/platforms/cell/spufs/run.c b/arch/powerpc/platforms/cell/spufs/run.c
index 5986d08115a..96bf7c2b86f 100644
--- a/arch/powerpc/platforms/cell/spufs/run.c
+++ b/arch/powerpc/platforms/cell/spufs/run.c
@@ -323,6 +323,10 @@ static int spu_process_callback(struct spu_context *ctx)
323 return -EINTR; 323 return -EINTR;
324 } 324 }
325 325
326 /* need to re-get the ls, as it may have changed when we released the
327 * spu */
328 ls = (void __iomem *)ctx->ops->get_ls(ctx);
329
326 /* write result, jump over indirect pointer */ 330 /* write result, jump over indirect pointer */
327 memcpy_toio(ls + ls_pointer, &spu_ret, sizeof(spu_ret)); 331 memcpy_toio(ls + ls_pointer, &spu_ret, sizeof(spu_ret));
328 ctx->ops->npc_write(ctx, npc); 332 ctx->ops->npc_write(ctx, npc);
diff --git a/arch/powerpc/platforms/cell/spufs/switch.c b/arch/powerpc/platforms/cell/spufs/switch.c
index e9dc7a55d1b..d2a1249d36d 100644
--- a/arch/powerpc/platforms/cell/spufs/switch.c
+++ b/arch/powerpc/platforms/cell/spufs/switch.c
@@ -1815,6 +1815,7 @@ static void save_csa(struct spu_state *prev, struct spu *spu)
1815 save_mfc_csr_ato(prev, spu); /* Step 24. */ 1815 save_mfc_csr_ato(prev, spu); /* Step 24. */
1816 save_mfc_tclass_id(prev, spu); /* Step 25. */ 1816 save_mfc_tclass_id(prev, spu); /* Step 25. */
1817 set_mfc_tclass_id(prev, spu); /* Step 26. */ 1817 set_mfc_tclass_id(prev, spu); /* Step 26. */
1818 save_mfc_cmd(prev, spu); /* Step 26a - moved from 44. */
1818 purge_mfc_queue(prev, spu); /* Step 27. */ 1819 purge_mfc_queue(prev, spu); /* Step 27. */
1819 wait_purge_complete(prev, spu); /* Step 28. */ 1820 wait_purge_complete(prev, spu); /* Step 28. */
1820 setup_mfc_sr1(prev, spu); /* Step 30. */ 1821 setup_mfc_sr1(prev, spu); /* Step 30. */
@@ -1831,7 +1832,6 @@ static void save_csa(struct spu_state *prev, struct spu *spu)
1831 save_ppuint_mb(prev, spu); /* Step 41. */ 1832 save_ppuint_mb(prev, spu); /* Step 41. */
1832 save_ch_part1(prev, spu); /* Step 42. */ 1833 save_ch_part1(prev, spu); /* Step 42. */
1833 save_spu_mb(prev, spu); /* Step 43. */ 1834 save_spu_mb(prev, spu); /* Step 43. */
1834 save_mfc_cmd(prev, spu); /* Step 44. */
1835 reset_ch(prev, spu); /* Step 45. */ 1835 reset_ch(prev, spu); /* Step 45. */
1836} 1836}
1837 1837