[POWERPC] spufs: Load isolation kernel from spu_run
In order to fit with the "don't-run-spus-outside-of-spu_run" model, this patch starts the isolated-mode loader in spu_run, rather than spu_create. If spu_run is passed an isolated-mode context that isn't in isolated mode state, it will run the loader. This fixes potential races with the isolated SPE app doing a stop-and-signal before the PPE has called spu_run: bugzilla #29111. Also (in conjunction with a mambo patch), this addresses #28565, as we always set the runcntrl register when entering spu_run. It is up to libspe to ensure that isolated-mode apps are cleaned up after running to completion - ie, put the app through the "ISOLATE EXIT" state (see Ch11 of the CBEA). Signed-off-by:Jeremy Kerr <jk@ozlabs.org> Signed-off-by:
Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by:
Paul Mackerras <paulus@samba.org>
Showing
- arch/powerpc/platforms/cell/spufs/file.c 0 additions, 32 deletionsarch/powerpc/platforms/cell/spufs/file.c
- arch/powerpc/platforms/cell/spufs/inode.c 1 addition, 108 deletionsarch/powerpc/platforms/cell/spufs/inode.c
- arch/powerpc/platforms/cell/spufs/run.c 110 additions, 7 deletionsarch/powerpc/platforms/cell/spufs/run.c
- arch/powerpc/platforms/cell/spufs/spufs.h 2 additions, 1 deletionarch/powerpc/platforms/cell/spufs/spufs.h
Loading
Please register or sign in to comment