1. 08 9月, 2005 1 次提交
    • J
      [PATCH] ia64 cpuset + build_sched_domains() mangles structures · f68f447e
      John Hawkes 提交于
      I've already sent this to the maintainers, and this is now being sent to a
      larger community audience.  I have fixed a problem with the ia64 version of
      build_sched_domains(), but a similar fix still needs to be made to the
      generic build_sched_domains() in kernel/sched.c.
      
      The "dynamic sched domains" functionality has recently been merged into
      2.6.13-rcN that sees the dynamic declaration of a cpu-exclusive (a.k.a.
      "isolated") cpuset and rebuilds the CPU Scheduler sched domains and sched
      groups to separate away the CPUs in this cpu-exclusive cpuset from the
      remainder of the non-isolated CPUs.  This allows the non-isolated CPUs to
      completely ignore the isolated CPUs when doing load-balancing.
      
      Unfortunately, build_sched_domains() expects that a sched domain will
      include all the CPUs of each node in the domain, i.e., that no node will
      belong in both an isolated cpuset and a non-isolated cpuset.  Declaring a
      cpuset that violates this presumption will produce flawed data structures
      and will oops the kernel.
      
      To trigger the problem (on a NUMA system with >1 CPUs per node):
         cd /dev/cpuset
         mkdir newcpuset
         cd newcpuset
         echo 0 >cpus
         echo 0 >mems
         echo 1 >cpu_exclusive
      
      I have fixed this shortcoming for ia64 NUMA (with multiple CPUs per node).
      A similar shortcoming exists in the generic build_sched_domains() (in
      kernel/sched.c) for NUMA, and that needs to be fixed also.  The fix
      involves dynamically allocating sched_group_nodes[] and
      sched_group_allnodes[] for each invocation of build_sched_domains(), rather
      than using global arrays for these structures.  Care must be taken to
      remember kmalloc() addresses so that arch_destroy_sched_domains() can
      properly kfree() the new dynamic structures.
      Signed-off-by: NJohn Hawkes <hawkes@sgi.com>
      Cc: Nick Piggin <nickpiggin@yahoo.com.au>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      f68f447e
  2. 16 8月, 2005 1 次提交
  3. 26 6月, 2005 2 次提交
  4. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4