1. 29 Sep, 2008 4 commits
    • Thomas Gleixner's avatar
      hrtimer: prevent migration of per CPU hrtimers · ccc7dadf
      Thomas Gleixner authored
      Impact: per CPU hrtimers can be migrated from a dead CPU
      
      The hrtimer code has no knowledge about per CPU timers, but we need to
      prevent the migration of such timers and warn when such a timer is
      active at migration time.
      
      Explicitely mark the timers as per CPU and use a more understandable
      mode descriptor for the interrupts safe unlocked callback mode, which
      is used by hrtimer_sleeper and the scheduler code.
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      ccc7dadf
    • Thomas Gleixner's avatar
      hrtimer: mark migration state · b00c1a99
      Thomas Gleixner authored
      Impact: during migration active hrtimers can be seen as inactive
      
      The migration code removes the hrtimers from the queues of the dead
      CPU and sets the state temporary to INACTIVE. The enqueue code sets it
      to ACTIVE/PENDING again.
      
      Prevent that the wrong state can be seen by using a separate migration
      state bit.
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      b00c1a99
    • Thomas Gleixner's avatar
      hrtimer: fix migration of CB_IRQSAFE_NO_SOFTIRQ hrtimers · 41e1022e
      Thomas Gleixner authored
      Impact: Stale timers after a CPU went offline.
      
      commit 37bb6cb4
             hrtimer: unlock hrtimer_wakeup
      
      changed the hrtimer sleeper callback mode to CB_IRQSAFE_NO_SOFTIRQ due
      to locking problems. A result of this change is that when enqueue is
      called for an already expired hrtimer the callback function is not
      longer called directly from the enqueue code. The normal callers have
      been fixed in the code, but the migration code which moves hrtimers
      from a dead CPU to a live CPU was not made aware of this.
      
      This can be fixed by checking the timer state after the call to
      enqueue in the migration code.
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      41e1022e
    • Thomas Gleixner's avatar
      hrtimer: migrate pending list on cpu offline · 7659e349
      Thomas Gleixner authored
      Impact: hrtimers which are on the pending list are not migrated at cpu
      	offline and can be stale forever
      
      Add the pending list migration when CONFIG_HIGH_RES_TIMERS is enabled
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      7659e349
  2. 25 Sep, 2008 1 commit
  3. 24 Sep, 2008 22 commits
  4. 23 Sep, 2008 13 commits