An error occurred fetching the project authors.
  1. 07 Apr, 2007 1 commit
    • Ingo Molnar's avatar
      [PATCH] sched: get rid of p->children use in show_task() · 35f6f753
      Ingo Molnar authored
      the p->parent PID printout gives us all the information about the
      task tree that we need - the eldest_child()/older_sibling()/
      younger_sibling() printouts are mostly historic and i do not
      remember ever having used those fields. (IMO in fact they confuse
      the SysRq-T output.) So remove them.
      
      This code has sentimental value though, those fields and
      printouts are one of the oldest ones still surviving from
      Linux v0.95's kernel/sched.c:
      
              if (p->p_ysptr || p->p_osptr)
                      printk("   Younger sib=%d, older sib=%d\n\r",
                              p->p_ysptr ? p->p_ysptr->pid : -1,
                              p->p_osptr ? p->p_osptr->pid : -1);
              else
                      printk("\n\r");
      
      written 15 years ago, in early 1992.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarLinus 'snif' Torvalds <torvalds@linux-foundation.org>
      35f6f753
  2. 05 Mar, 2007 1 commit
    • Con Kolivas's avatar
      [PATCH] sched: remove SMT nice · 69f7c0a1
      Con Kolivas authored
      Remove the SMT-nice feature which idles sibling cpus on SMT cpus to
      facilitiate nice working properly where cpu power is shared.  The idling of
      cpus in the presence of runnable tasks is considered too fragile, easy to
      break with outside code, and the complexity of managing this system if an
      architecture comes along with many logical cores sharing cpu power will be
      unworkable.
      
      Remove the associated per_cpu_gain variable in sched_domains used only by
      this code.
      
      Also:
      
        The reason is that with dynticks enabled, this code breaks without yet
        further tweaks so dynticks brought on the rapid demise of this code.  So
        either we tweak this code or kill it off entirely.  It was Ingo's preference
        to kill it off.  Either way this needs to happen for 2.6.21 since dynticks
        has gone in.
      Signed-off-by: default avatarCon Kolivas <kernel@kolivas.org>
      Acked-by: default avatarIngo Molnar <mingo@elte.hu>
      Cc: Nick Piggin <nickpiggin@yahoo.com.au>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      69f7c0a1
  3. 01 Mar, 2007 2 commits
  4. 13 Feb, 2007 1 commit
    • Zachary Amsden's avatar
      [PATCH] i386: paravirt CPU hypercall batching mode · 9226d125
      Zachary Amsden authored
      The VMI ROM has a mode where hypercalls can be queued and batched.  This turns
      out to be a significant win during context switch, but must be done at a
      specific point before side effects to CPU state are visible to subsequent
      instructions.  This is similar to the MMU batching hooks already provided.
      The same hooks could be used by the Xen backend to implement a context switch
      multicall.
      
      To explain a bit more about lazy modes in the paravirt patches, basically, the
      idea is that only one of lazy CPU or MMU mode can be active at any given time.
       Lazy MMU mode is similar to this lazy CPU mode, and allows for batching of
      multiple PTE updates (say, inside a remap loop), but to avoid keeping some
      kind of state machine about when to flush cpu or mmu updates, we just allow
      one or the other to be active.  Although there is no real reason a more
      comprehensive scheme could not be implemented, there is also no demonstrated
      need for this extra complexity.
      Signed-off-by: default avatarZachary Amsden <zach@vmware.com>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Cc: Andi Kleen <ak@suse.de>
      Cc: Jeremy Fitzhardinge <jeremy@xensource.com>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Chris Wright <chrisw@sous-sol.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      9226d125
  5. 12 Feb, 2007 1 commit
  6. 11 Feb, 2007 2 commits
  7. 12 Jan, 2007 1 commit
  8. 30 Dec, 2006 1 commit
    • Ingo Molnar's avatar
      [PATCH] sched: fix cond_resched_softirq() offset · 9414232f
      Ingo Molnar authored
      Remove the __resched_legal() check: it is conceptually broken.  The biggest
      problem it had is that it can mask buggy cond_resched() calls.  A
      cond_resched() call is only legal if we are not in an atomic context, with
      two narrow exceptions:
      
       - if the system is booting
       - a reacquire_kernel_lock() down() done while PREEMPT_ACTIVE is set
      
      But __resched_legal() hid this and just silently returned whenever
      these primitives were called from invalid contexts. (Same goes for
      cond_resched_locked() and cond_resched_softirq()).
      
      Furthermore, the __legal_resched(0) call was buggy in that it caused
      unnecessarily long softirq latencies via cond_resched_softirq().  (which is
      only called from softirq-off sections, hence the code did nothing.)
      
      The fix is to resurrect the efficiency of the might_sleep checks and to
      only allow the narrow exceptions.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      9414232f
  9. 22 Dec, 2006 2 commits
  10. 21 Dec, 2006 1 commit
    • Peter Williams's avatar
      [PATCH] sched: improve efficiency of sched_fork() · bc947631
      Peter Williams authored
      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: default avatarPeter Williams <pwil3058@bigpond.com.au>
      Acked-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      bc947631
  11. 13 Dec, 2006 1 commit
  12. 10 Dec, 2006 16 commits
  13. 07 Dec, 2006 7 commits
  14. 20 Oct, 2006 1 commit
  15. 11 Oct, 2006 1 commit
    • Nick Piggin's avatar
      [PATCH] sched: likely profiling · beed33a8
      Nick Piggin authored
      This likely profiling is pretty fun. I found a few possible problems
      in sched.c.
      
      This patch may be not measurable, but when I did measure long ago,
      nooping (un)likely cost a couple of % on scheduler heavy benchmarks, so
      it all adds up.
      
      Tweak some branch hints:
      
      - the 2nd 64 bits in the bitmask is likely to be populated, because it
        contains the first 28 bits (nearly 3/4) of the normal priorities.
        (ratio of 669669:691 ~= 1000:1).
      
      - it isn't unlikely that context switching switches to another process. it
        might be very rapidly switching to and from the idle process (ratio of
        475815:419004 and 471330:423544). Let the branch predictor decide.
      
      - preempt_enable seems to be very often called in a nested preempt_disable
        or with interrupts disabled (ratio of 3567760:87965 ~= 40:1)
      Signed-off-by: default avatarNick Piggin <npiggin@suse.de>
      Acked-by: default avatarIngo Molnar <mingo@elte.hu>
      Cc: Daniel Walker <dwalker@mvista.com>
      Cc: Hua Zhong <hzhong@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      beed33a8
  16. 03 Oct, 2006 1 commit