1. 09 Jul, 2007 7 commits
    • Ingo Molnar's avatar
      sched: add init_idle_bootup_task() · 1df21055
      Ingo Molnar authored
      add the init_idle_bootup_task() callback to the bootup thread,
      unused at the moment. (CFS will use it to switch the scheduling
      class of the boot thread to the idle class)
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      1df21055
    • Ingo Molnar's avatar
      sched: add in_atomic_preempt_off() · 4da1ce6d
      Ingo Molnar authored
      add in_atomic_preempt_off() - debugging helper that will
      simplify schedule().
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      4da1ce6d
    • Ingo Molnar's avatar
      sched: remove sched_exit() · f64f6114
      Ingo Molnar authored
      remove sched_exit(): the elaborate dance of us trying to recover
      timeslices given to child tasks never really worked.
      
      CFS does not need it either.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      f64f6114
    • Ingo Molnar's avatar
      sched: uninline set_task_cpu() · c65cc870
      Ingo Molnar authored
      uninline set_task_cpu(): CFS will add more code to it.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      c65cc870
    • Ingo Molnar's avatar
      sched: zap the migration init / cache-hot balancing code · 0437e109
      Ingo Molnar authored
      the SMP load-balancer uses the boot-time migration-cost estimation
      code to attempt to improve the quality of balancing. The reason for
      this code is that the discrete priority queues do not preserve
      the order of scheduling accurately, so the load-balancer skips
      tasks that were running on a CPU 'recently'.
      
      this code is fundamental fragile: the boot-time migration cost detector
      doesnt really work on systems that had large L3 caches, it caused boot
      delays on large systems and the whole cache-hot concept made the
      balancing code pretty undeterministic as well.
      
      (and hey, i wrote most of it, so i can say it out loud that it sucks ;-)
      
      under CFS the same purpose of cache affinity can be achieved without
      any special cache-hot special-case: tasks are sorted in the 'timeline'
      tree and the SMP balancer picks tasks from the left side of the
      tree, thus the most cache-cold task is balanced automatically.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0437e109
    • Ingo Molnar's avatar
      sched: add SCHED_IDLE policy · 0e6aca43
      Ingo Molnar authored
      this patch adds the SCHED_IDLE policy to sched.h.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0e6aca43
    • Ingo Molnar's avatar
      sched: rename idle_type/SCHED_IDLE · d15bcfdb
      Ingo Molnar authored
      enum idle_type (used by the load-balancer) clashes with the
      SCHED_IDLE name that we want to introduce. 'CPU_IDLE' instead
      of 'SCHED_IDLE' is more descriptive as well.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      d15bcfdb
  2. 08 Jul, 2007 6 commits
  3. 07 Jul, 2007 4 commits
    • Adrian Bunk's avatar
      DLM must depend on SYSFS · 95511ad4
      Adrian Bunk authored
      The dependency of DLM on SYSFS got lost in
      commit 6ed7257b resulting in the
      following compile error with CONFIG_DLM=y, CONFIG_SYSFS=n:
      
      <--  snip  -->
      
      ...
        LD      .tmp_vmlinux1
      fs/built-in.o: In function `dlm_lockspace_init':
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/fs/dlm/lockspace.c:231: undefined reference to `kernel_subsys'
      fs/built-in.o: In function `configfs_init':
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/fs/configfs/mount.c:143: undefined reference to `kernel_subsys'
      make[1]: *** [.tmp_vmlinux1] Error 1
      
      <--  snip  -->
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      95511ad4
    • Dave Jones's avatar
      Clean up E7520/7320/7525 quirk printk. · 38377be8
      Dave Jones authored
      The printk level in this printk is bogus, as the previous printk
      didn't have a terminating \n resulting in ..
      
      Intel E7520/7320/7525 detected.<6>Disabling irq balancing and affinity
      
      It also never printed a \n at all in the case where we didn't do
      the quirk.
      
      Change it to only make noise if it actually does something useful.
      Signed-off-by: default avatarDave Jones <davej@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      38377be8
    • Adrian Bunk's avatar
      include/linux/kallsyms.h must #include <linux/errno.h> · 40e48eed
      Adrian Bunk authored
      This patch fixes the following 2.6.22 regression with CONFIG_KALLSYMS=n:
      
      <--  snip  -->
      
      ...
        CC      arch/m32r/kernel/traps.o
      In file included from /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/arch/m32r/kernel/traps.c:14:
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h: In function 'lookup_symbol_name':
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:66: error: 'ERANGE' undeclared (first use in this function)
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:66: error: (Each undeclared identifier is reported only once
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:66: error: for each function it appears in.)
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h: In function 'lookup_symbol_attrs':
      /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:71: error: 'ERANGE' undeclared (first use in this function)
      make[2]: *** [arch/m32r/kernel/traps.o] Error 1
      
      <--  snip  -->
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      40e48eed
    • David Woodhouse's avatar
      Fix use-after-free oops in Bluetooth HID. · 1c39858b
      David Woodhouse authored
      When cleaning up HIDP sessions, we currently close the ACL connection
      before deregistering the input device. Closing the ACL connection
      schedules a workqueue to remove the associated objects from sysfs, but
      the input device still refers to them -- and if the workqueue happens to
      run before the input device removal, the kernel will oops when trying to
      look up PHYSDEVPATH for the removed input device.
      
      Fix this by deregistering the input device before closing the
      connections.
      Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
      Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1c39858b
  4. 06 Jul, 2007 23 commits