1. 10 Dec, 2015 1 commit
  2. 04 Mar, 2015 1 commit
  3. 20 Mar, 2014 1 commit
  4. 23 Jan, 2014 1 commit
  5. 12 Nov, 2013 1 commit
  6. 14 Jul, 2013 1 commit
    • Paul Gortmaker's avatar
      kernel: delete __cpuinit usage from all core kernel files · 0db0628d
      Paul Gortmaker authored
      The __cpuinit type of throwaway sections might have made sense
      some time ago when RAM was more constrained, but now the savings
      do not offset the cost and complications.  For example, the fix in
      commit 5e427ec2 ("x86: Fix bit corruption at CPU resume time")
      is a good example of the nasty type of bugs that can be created
      with improper use of the various __init prefixes.
      
      After a discussion on LKML[1] it was decided that cpuinit should go
      the way of devinit and be phased out.  Once all the users are gone,
      we can then finally remove the macros themselves from linux/init.h.
      
      This removes all the uses of the __cpuinit macros from C files in
      the core kernel directories (kernel, init, lib, mm, and include)
      that don't really have a specific maintainer.
      
      [1] https://lkml.org/lkml/2013/5/20/589Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      0db0628d
  7. 21 Jun, 2013 1 commit
  8. 03 Jun, 2013 1 commit
  9. 14 Nov, 2012 1 commit
  10. 28 Mar, 2012 1 commit
  11. 31 Mar, 2011 1 commit
  12. 11 Aug, 2010 1 commit
  13. 16 Dec, 2009 1 commit
  14. 23 Nov, 2009 1 commit
    • Gautham R Shenoy's avatar
      powerpc/pseries: Add hooks to put the CPU into an appropriate offline state · 3aa565f5
      Gautham R Shenoy authored
      When a CPU is offlined on POWER currently, we call rtas_stop_self() and hand
      the CPU back to the resource pool. This path is used for DLPAR which will
      cause a change in the LPAR configuration which will be visible outside.
      
      This patch changes the default state a CPU is put into when it is offlined.
      On platforms which support ceding the processor to the hypervisor with
      latency hint specifier value, during a cpu offline operation,
      instead of calling rtas_stop_self(), we cede the vCPU to the hypervisor
      while passing a latency hint specifier value. The Hypervisor can use this hint
      to provide better energy savings. Also, during the offline
      operation, the control of the vCPU remains with the LPAR as oppposed to
      returning it to the resource pool.
      
      The patch achieves this by creating an infrastructure to set the
      preferred_offline_state() which can be either
      - CPU_STATE_OFFLINE: which is the current behaviour of calling
        rtas_stop_self()
      
      - CPU_STATE_INACTIVE: which cedes the vCPU to the hypervisor with the latency
        hint specifier.
      
      The codepath which wants to perform a DLPAR operation can set the
      preferred_offline_state() of a CPU to CPU_STATE_OFFLINE before invoking
      cpu_down().
      
      The patch also provides a boot-time command line argument to disable/enable
      CPU_STATE_INACTIVE.
      Signed-off-by: default avatarGautham R Shenoy <ego@in.ibm.com>
      Signed-off-by: default avatarNathan Fontenot <nfont@austin.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      3aa565f5
  15. 18 Dec, 2008 1 commit
  16. 12 Aug, 2008 1 commit
  17. 26 Jan, 2008 1 commit
  18. 25 Jan, 2008 1 commit
    • Gautham R Shenoy's avatar
      cpu-hotplug: replace lock_cpu_hotplug() with get_online_cpus() · 86ef5c9a
      Gautham R Shenoy authored
      Replace all lock_cpu_hotplug/unlock_cpu_hotplug from the kernel and use
      get_online_cpus and put_online_cpus instead as it highlights the
      refcount semantics in these operations.
      
      The new API guarantees protection against the cpu-hotplug operation, but
      it doesn't guarantee serialized access to any of the local data
      structures. Hence the changes needs to be reviewed.
      
      In case of pseries_add_processor/pseries_remove_processor, use
      cpu_maps_update_begin()/cpu_maps_update_done() as we're modifying the
      cpu_present_map there.
      Signed-off-by: default avatarGautham R Shenoy <ego@in.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      86ef5c9a
  19. 19 Oct, 2007 1 commit
    • Cliff Wickman's avatar
      hotplug cpu: migrate a task within its cpuset · 470fd646
      Cliff Wickman authored
      When a cpu is disabled, move_task_off_dead_cpu() is called for tasks that have
      been running on that cpu.
      
      Currently, such a task is migrated:
       1) to any cpu on the same node as the disabled cpu, which is both online
          and among that task's cpus_allowed
       2) to any cpu which is both online and among that task's cpus_allowed
      
      It is typical of a multithreaded application running on a large NUMA system to
      have its tasks confined to a cpuset so as to cluster them near the memory that
      they share.  Furthermore, it is typical to explicitly place such a task on a
      specific cpu in that cpuset.  And in that case the task's cpus_allowed
      includes only a single cpu.
      
      This patch would insert a preference to migrate such a task to some cpu within
      its cpuset (and set its cpus_allowed to its entire cpuset).
      
      With this patch, migrate the task to:
       1) to any cpu on the same node as the disabled cpu, which is both online
          and among that task's cpus_allowed
       2) to any online cpu within the task's cpuset
       3) to any cpu which is both online and among that task's cpus_allowed
      
      In order to do this, move_task_off_dead_cpu() must make a call to
      cpuset_cpus_allowed_locked(), a new subset of cpuset_cpus_allowed(), that will
      not block.  (name change - per Oleg's suggestion)
      
      Calls are made to cpuset_lock() and cpuset_unlock() in migration_call() to set
      the cpuset mutex during the whole migrate_live_tasks() and
      migrate_dead_tasks() procedure.
      
      [akpm@linux-foundation.org: build fix]
      [pj@sgi.com: Fix indentation and spacing]
      Signed-off-by: default avatarCliff Wickman <cpw@sgi.com>
      Cc: Oleg Nesterov <oleg@tv-sign.ru>
      Cc: Christoph Lameter <clameter@sgi.com>
      Cc: Paul Jackson <pj@sgi.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarPaul Jackson <pj@sgi.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      470fd646
  20. 09 May, 2007 1 commit
    • Rafael J. Wysocki's avatar
      Add suspend-related notifications for CPU hotplug · 8bb78442
      Rafael J. Wysocki authored
      Since nonboot CPUs are now disabled after tasks and devices have been
      frozen and the CPU hotplug infrastructure is used for this purpose, we need
      special CPU hotplug notifications that will help the CPU-hotplug-aware
      subsystems distinguish normal CPU hotplug events from CPU hotplug events
      related to a system-wide suspend or resume operation in progress.  This
      patch introduces such notifications and causes them to be used during
      suspend and resume transitions.  It also changes all of the
      CPU-hotplug-aware subsystems to take these notifications into consideration
      (for now they are handled in the same way as the corresponding "normal"
      ones).
      
      [oleg@tv-sign.ru: cleanups]
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      Cc: Gautham R Shenoy <ego@in.ibm.com>
      Cc: Pavel Machek <pavel@ucw.cz>
      Signed-off-by: default avatarOleg Nesterov <oleg@tv-sign.ru>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8bb78442
  21. 29 Nov, 2006 1 commit
  22. 20 Oct, 2006 1 commit
  23. 31 Jul, 2006 1 commit
  24. 28 Mar, 2006 1 commit
  25. 20 Feb, 2006 1 commit
  26. 17 Feb, 2006 2 commits
  27. 16 Feb, 2006 1 commit
  28. 08 Jan, 2006 1 commit