Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e097b513285e616215b23af234d127298bb8d89a
Commit:     e097b513285e616215b23af234d127298bb8d89a
Parent:     b3e76cc3244ac139fc75750c5af9edbb9f191a10
Author:     Christoph Hellwig <[EMAIL PROTECTED]>
AuthorDate: Mon Apr 23 21:08:09 2007 +0200
Committer:  Arnd Bergmann <[EMAIL PROTECTED]>
CommitDate: Mon Apr 23 21:18:53 2007 +0200

    [POWERPC] spu sched: ensure preempted threads are put back on the runqueue, 
part2
    
    To not lose a spu thread we need to make sure it always gets put back
    on the runqueue.  In find_victim aswell as in the scheduler tick as done
    in the previous patch.
    
    Signed-off-by: Christoph Hellwig <[EMAIL PROTECTED]>
    Signed-off-by: Arnd Bergmann <[EMAIL PROTECTED]>
---
 arch/powerpc/platforms/cell/spufs/sched.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/arch/powerpc/platforms/cell/spufs/sched.c 
b/arch/powerpc/platforms/cell/spufs/sched.c
index 5149dff..405a055 100644
--- a/arch/powerpc/platforms/cell/spufs/sched.c
+++ b/arch/powerpc/platforms/cell/spufs/sched.c
@@ -391,6 +391,12 @@ static struct spu *find_victim(struct spu_context *ctx)
                        }
                        spu_unbind_context(spu, victim);
                        mutex_unlock(&victim->state_mutex);
+                       /*
+                        * We need to break out of the wait loop in spu_run
+                        * manually to ensure this context gets put on the
+                        * runqueue again ASAP.
+                        */
+                       wake_up(&victim->stop_wq);
                        return spu;
                }
        }
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to