Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04860d48 authored by Borislav Petkov's avatar Borislav Petkov Committed by Thomas Gleixner
Browse files

locking/lockdep: Show unadorned pointers



Show unadorned pointers in lockdep reports - lockdep is a debugging
facility and hashing pointers there doesn't make a whole lotta sense.

Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20180226134926.23069-1-bp@alien8.de
parent 6ce5ae79
Loading
Loading
Loading
Loading
+12 −12
Original line number Original line Diff line number Diff line
@@ -557,7 +557,7 @@ static void print_lock(struct held_lock *hlock)
	}
	}


	print_lock_name(lock_classes + class_idx - 1);
	print_lock_name(lock_classes + class_idx - 1);
	printk(KERN_CONT ", at: [<%p>] %pS\n",
	printk(KERN_CONT ", at: [<%px>] %pS\n",
		(void *)hlock->acquire_ip, (void *)hlock->acquire_ip);
		(void *)hlock->acquire_ip, (void *)hlock->acquire_ip);
}
}


@@ -808,7 +808,7 @@ register_lock_class(struct lockdep_map *lock, unsigned int subclass, int force)
	if (verbose(class)) {
	if (verbose(class)) {
		graph_unlock();
		graph_unlock();


		printk("\nnew class %p: %s", class->key, class->name);
		printk("\nnew class %px: %s", class->key, class->name);
		if (class->name_version > 1)
		if (class->name_version > 1)
			printk(KERN_CONT "#%d", class->name_version);
			printk(KERN_CONT "#%d", class->name_version);
		printk(KERN_CONT "\n");
		printk(KERN_CONT "\n");
@@ -1407,7 +1407,7 @@ static void print_lock_class_header(struct lock_class *class, int depth)
	}
	}
	printk("%*s }\n", depth, "");
	printk("%*s }\n", depth, "");


	printk("%*s ... key      at: [<%p>] %pS\n",
	printk("%*s ... key      at: [<%px>] %pS\n",
		depth, "", class->key, class->key);
		depth, "", class->key, class->key);
}
}


@@ -2340,7 +2340,7 @@ static inline int lookup_chain_cache_add(struct task_struct *curr,


		if (very_verbose(class)) {
		if (very_verbose(class)) {
			printk("\nhash chain already cached, key: "
			printk("\nhash chain already cached, key: "
					"%016Lx tail class: [%p] %s\n",
					"%016Lx tail class: [%px] %s\n",
					(unsigned long long)chain_key,
					(unsigned long long)chain_key,
					class->key, class->name);
					class->key, class->name);
		}
		}
@@ -2349,7 +2349,7 @@ static inline int lookup_chain_cache_add(struct task_struct *curr,
	}
	}


	if (very_verbose(class)) {
	if (very_verbose(class)) {
		printk("\nnew hash chain, key: %016Lx tail class: [%p] %s\n",
		printk("\nnew hash chain, key: %016Lx tail class: [%px] %s\n",
			(unsigned long long)chain_key, class->key, class->name);
			(unsigned long long)chain_key, class->key, class->name);
	}
	}


@@ -2676,16 +2676,16 @@ check_usage_backwards(struct task_struct *curr, struct held_lock *this,
void print_irqtrace_events(struct task_struct *curr)
void print_irqtrace_events(struct task_struct *curr)
{
{
	printk("irq event stamp: %u\n", curr->irq_events);
	printk("irq event stamp: %u\n", curr->irq_events);
	printk("hardirqs last  enabled at (%u): [<%p>] %pS\n",
	printk("hardirqs last  enabled at (%u): [<%px>] %pS\n",
		curr->hardirq_enable_event, (void *)curr->hardirq_enable_ip,
		curr->hardirq_enable_event, (void *)curr->hardirq_enable_ip,
		(void *)curr->hardirq_enable_ip);
		(void *)curr->hardirq_enable_ip);
	printk("hardirqs last disabled at (%u): [<%p>] %pS\n",
	printk("hardirqs last disabled at (%u): [<%px>] %pS\n",
		curr->hardirq_disable_event, (void *)curr->hardirq_disable_ip,
		curr->hardirq_disable_event, (void *)curr->hardirq_disable_ip,
		(void *)curr->hardirq_disable_ip);
		(void *)curr->hardirq_disable_ip);
	printk("softirqs last  enabled at (%u): [<%p>] %pS\n",
	printk("softirqs last  enabled at (%u): [<%px>] %pS\n",
		curr->softirq_enable_event, (void *)curr->softirq_enable_ip,
		curr->softirq_enable_event, (void *)curr->softirq_enable_ip,
		(void *)curr->softirq_enable_ip);
		(void *)curr->softirq_enable_ip);
	printk("softirqs last disabled at (%u): [<%p>] %pS\n",
	printk("softirqs last disabled at (%u): [<%px>] %pS\n",
		curr->softirq_disable_event, (void *)curr->softirq_disable_ip,
		curr->softirq_disable_event, (void *)curr->softirq_disable_ip,
		(void *)curr->softirq_disable_ip);
		(void *)curr->softirq_disable_ip);
}
}
@@ -3207,7 +3207,7 @@ static void __lockdep_init_map(struct lockdep_map *lock, const char *name,
	 * Sanity check, the lock-class key must be persistent:
	 * Sanity check, the lock-class key must be persistent:
	 */
	 */
	if (!static_obj(key)) {
	if (!static_obj(key)) {
		printk("BUG: key %p not in .data!\n", key);
		printk("BUG: key %px not in .data!\n", key);
		/*
		/*
		 * What it says above ^^^^^, I suggest you read it.
		 * What it says above ^^^^^, I suggest you read it.
		 */
		 */
@@ -3322,7 +3322,7 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
	}
	}
	atomic_inc((atomic_t *)&class->ops);
	atomic_inc((atomic_t *)&class->ops);
	if (very_verbose(class)) {
	if (very_verbose(class)) {
		printk("\nacquire class [%p] %s", class->key, class->name);
		printk("\nacquire class [%px] %s", class->key, class->name);
		if (class->name_version > 1)
		if (class->name_version > 1)
			printk(KERN_CONT "#%d", class->name_version);
			printk(KERN_CONT "#%d", class->name_version);
		printk(KERN_CONT "\n");
		printk(KERN_CONT "\n");
@@ -4376,7 +4376,7 @@ print_freed_lock_bug(struct task_struct *curr, const void *mem_from,
	pr_warn("WARNING: held lock freed!\n");
	pr_warn("WARNING: held lock freed!\n");
	print_kernel_ident();
	print_kernel_ident();
	pr_warn("-------------------------\n");
	pr_warn("-------------------------\n");
	pr_warn("%s/%d is freeing memory %p-%p, with a lock still held there!\n",
	pr_warn("%s/%d is freeing memory %px-%px, with a lock still held there!\n",
		curr->comm, task_pid_nr(curr), mem_from, mem_to-1);
		curr->comm, task_pid_nr(curr), mem_from, mem_to-1);
	print_lock(hlock);
	print_lock(hlock);
	lockdep_print_held_locks(curr);
	lockdep_print_held_locks(curr);