- lock-validator-core-lock-validator-provide-common-print_ip_sym.patch removed from -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

     lock validator: provide common print_ip_sym()

has been removed from the -mm tree.  Its filename is

     lock-validator-core-lock-validator-provide-common-print_ip_sym.patch

This patch was dropped because lockdep is being redone

------------------------------------------------------
Subject: lock validator: provide common print_ip_sym()
From: Heiko Carstens <heiko.carstens@xxxxxxxxxx>


Provide a common print_ip_sym() function that prints the passed instruction
pointer as well as the symbol belonging to it.  Avoids adding a bunch of
#ifdef CONFIG_64BIT in order to get the printk format right on 32/64 bit
platforms.

Acked-by: Ingo Molnar <mingo@xxxxxxx>
Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxx>
Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 include/linux/kallsyms.h |   14 +++++++++++++
 kernel/lockdep.c         |   38 +++++++++++++------------------------
 kernel/stacktrace.c      |    4 ---
 3 files changed, 29 insertions(+), 27 deletions(-)

diff -puN include/linux/kallsyms.h~lock-validator-core-lock-validator-provide-common-print_ip_sym include/linux/kallsyms.h
--- a/include/linux/kallsyms.h~lock-validator-core-lock-validator-provide-common-print_ip_sym
+++ a/include/linux/kallsyms.h
@@ -63,4 +63,18 @@ do {						\
 	__print_symbol(fmt, addr);		\
 } while(0)
 
+#ifndef CONFIG_64BIT
+#define print_ip_sym(ip)		\
+do {					\
+	printk("[<%08lx>]", ip);	\
+	print_symbol(" %s\n", ip);	\
+} while(0)
+#else
+#define print_ip_sym(ip)		\
+do {					\
+	printk("[<%016lx>]", ip);	\
+	print_symbol(" %s\n", ip);	\
+} while(0)
+#endif
+
 #endif /*_LINUX_KALLSYMS_H*/
diff -puN kernel/lockdep.c~lock-validator-core-lock-validator-provide-common-print_ip_sym kernel/lockdep.c
--- a/kernel/lockdep.c~lock-validator-core-lock-validator-provide-common-print_ip_sym
+++ a/kernel/lockdep.c
@@ -307,12 +307,6 @@ static const char *usage_str[] =
 	[LOCK_ENABLED_HARDIRQS_READ] =	"hardirq-on-R",
 };
 
-static void printk_sym(unsigned long ip)
-{
-	printk(" [<%08lx>]", ip);
-	print_symbol(" %s\n", ip);
-}
-
 const char * __get_key_name(struct lockdep_subtype_key *key, char *str)
 {
 	unsigned long offs, size;
@@ -409,8 +403,8 @@ static void print_lockdep_cache(struct l
 static void print_lock(struct held_lock *hlock)
 {
 	print_lock_name(hlock->type);
-	printk(", at:");
-	printk_sym(hlock->acquire_ip);
+	printk(", at: ");
+	print_ip_sym(hlock->acquire_ip);
 }
 
 void lockdep_print_held_locks(struct task_struct *curr)
@@ -464,8 +458,8 @@ void print_lock_type_header(struct lock_
 	printk(" }\n");
 
 	print_spaces(depth);
-	printk(" ... key      at:");
-	printk_sym((unsigned long)type->key);
+	printk(" ... key      at: ");
+	print_ip_sym((unsigned long)type->key);
 }
 
 /*
@@ -1504,18 +1498,14 @@ check_usage_backwards(struct task_struct
 static inline void print_irqtrace_events(struct task_struct *curr)
 {
 	printk("irq event stamp: %u\n", curr->irq_events);
-	printk("hardirqs last  enabled at (%u): [<%08lx>]",
-		curr->hardirq_enable_event, curr->hardirq_enable_ip);
-	print_symbol(" %s\n", curr->hardirq_enable_ip);
-	printk("hardirqs last disabled at (%u): [<%08lx>]",
-		curr->hardirq_disable_event, curr->hardirq_disable_ip);
-	print_symbol(" %s\n", curr->hardirq_disable_ip);
-	printk("softirqs last  enabled at (%u): [<%08lx>]",
-		curr->softirq_enable_event, curr->softirq_enable_ip);
-	print_symbol(" %s\n", curr->softirq_enable_ip);
-	printk("softirqs last disabled at (%u): [<%08lx>]",
-		curr->softirq_disable_event, curr->softirq_disable_ip);
-	print_symbol(" %s\n", curr->softirq_disable_ip);
+	printk("hardirqs last  enabled at (%u): ", curr->hardirq_enable_event);
+	print_ip_sym(curr->hardirq_enable_ip);
+	printk("hardirqs last disabled at (%u): ", curr->hardirq_disable_event);
+	print_ip_sym(curr->hardirq_disable_ip);
+	printk("softirqs last  enabled at (%u): ", curr->softirq_enable_event);
+	print_ip_sym(curr->softirq_enable_ip);
+	printk("softirqs last disabled at (%u): ", curr->softirq_disable_event);
+	print_ip_sym(curr->softirq_disable_ip);
 }
 
 #else
@@ -2253,7 +2243,7 @@ print_unlock_order_bug(struct task_struc
 		curr->comm, curr->pid);
 	print_lockdep_cache(lock);
 	printk(") at:\n");
-	printk_sym(ip);
+	print_ip_sym(ip);
 	printk("but the next lock to release is:\n");
 	print_lock(hlock);
 	printk("\nother info that might help us debug this:\n");
@@ -2282,7 +2272,7 @@ print_unlock_inbalance_bug(struct task_s
 		curr->comm, curr->pid);
 	print_lockdep_cache(lock);
 	printk(") at:\n");
-	printk_sym(ip);
+	print_ip_sym(ip);
 	printk("but there are no more locks to release!\n");
 	printk("\nother info that might help us debug this:\n");
 	lockdep_print_held_locks(curr);
diff -puN kernel/stacktrace.c~lock-validator-core-lock-validator-provide-common-print_ip_sym kernel/stacktrace.c
--- a/kernel/stacktrace.c~lock-validator-core-lock-validator-provide-common-print_ip_sym
+++ a/kernel/stacktrace.c
@@ -18,9 +18,7 @@ void print_stack_trace(struct stack_trac
 
 		for (j = 0; j < spaces + 1; j++)
 			printk(" ");
-
-		printk("[<%08lx>]", ip);
-		print_symbol(" %s\n", ip);
+		print_ip_sym(ip);
 	}
 }
 
_

Patches currently in -mm which might be from heiko.carstens@xxxxxxxxxx are

origin.patch
git-klibc.patch
git-s390.patch
zoned-vm-counters-create-vmstatc-h-from-page_allocc-h-s390-fix.patch
s390-move-var-declarations-behind-ifdef.patch
fix-oddball-boolean-logic-in-s390-netiucv.patch
s390-broken-null-test-in-claw-driver.patch
cpu-hotplug-fix-cpu_up_cancel-handling.patch
s390-setupc-cleanup-build-fix.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux