• P
    [PATCH] sched: improve efficiency of sched_fork() · bc947631
    Peter Williams 提交于
    Problem:
      sched_fork() has always called scheduler_tick() in some (unlikely)
      circumstances in order to update the current task in light of those
      circumstances.  It has always been the case that the work done by
      scheduler_tick() was more than was required to handle the problem in
      hand but no harm was done except for the waste of a few CPU cycles.
    
      However, the splitting of scheduler_tick() into two procedures in
      2.6.20-rc1 enables the wasted cycles to be saved as the new procedure
      task_running_tick() does all the work that is required to rectify the
      problem being handled.
    
    Solution:
      Replace the call to scheduler_tick() in sched_fork() with a call to
      task_running_tick().
    Signed-off-by: NPeter Williams <pwil3058@bigpond.com.au>
    Acked-by: NIngo Molnar <mingo@elte.hu>
    Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
    bc947631
sched.c 176.8 KB