]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
Merge branches 'core-fixes-for-linus' and 'timers-fixes-for-linus' of git://git.kerne...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Feb 2011 18:19:18 +0000 (10:19 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Feb 2011 18:19:18 +0000 (10:19 -0800)
* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  Revert "lockdep, timer: Fix del_timer_sync() annotation"

* 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  timer debug: Hide kernel addresses via %pK in /proc/timer_list

kernel/time/timer_list.c
kernel/timer.c

index 32a19f9397fc347c3144a01e142308c026f49c70..3258455549f421d3b65e0d085929541f672b29b0 100644 (file)
@@ -41,7 +41,7 @@ static void print_name_offset(struct seq_file *m, void *sym)
        char symname[KSYM_NAME_LEN];
 
        if (lookup_symbol_name((unsigned long)sym, symname) < 0)
-               SEQ_printf(m, "<%p>", sym);
+               SEQ_printf(m, "<%pK>", sym);
        else
                SEQ_printf(m, "%s", symname);
 }
@@ -112,7 +112,7 @@ next_one:
 static void
 print_base(struct seq_file *m, struct hrtimer_clock_base *base, u64 now)
 {
-       SEQ_printf(m, "  .base:       %p\n", base);
+       SEQ_printf(m, "  .base:       %pK\n", base);
        SEQ_printf(m, "  .index:      %d\n",
                        base->index);
        SEQ_printf(m, "  .resolution: %Lu nsecs\n",
index d53ce66daea0ec7a87ff2700f435ba1ee2eb174e..d6459923d2452bd4c0b6c71f48c45ee8d8f505da 100644 (file)
@@ -959,7 +959,7 @@ EXPORT_SYMBOL(try_to_del_timer_sync);
  *
  * Synchronization rules: Callers must prevent restarting of the timer,
  * otherwise this function is meaningless. It must not be called from
- * hardirq contexts. The caller must not hold locks which would prevent
+ * interrupt contexts. The caller must not hold locks which would prevent
  * completion of the timer's handler. The timer's handler must not call
  * add_timer_on(). Upon exit the timer is not queued and the handler is
  * not running on any CPU.
@@ -971,12 +971,10 @@ int del_timer_sync(struct timer_list *timer)
 #ifdef CONFIG_LOCKDEP
        unsigned long flags;
 
-       raw_local_irq_save(flags);
-       local_bh_disable();
+       local_irq_save(flags);
        lock_map_acquire(&timer->lockdep_map);
        lock_map_release(&timer->lockdep_map);
-       _local_bh_enable();
-       raw_local_irq_restore(flags);
+       local_irq_restore(flags);
 #endif
        /*
         * don't use it in hardirq context, because it