Skip to contentSkip to conversation

list_debug: show address of prev and next when list_del corruption is detected.

PATCH New Masayoshi Mizuma 1 participant 1 message Nov 17, 2016 Library code

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 list_debug: show address of prev and next when list_del corruption is detected.

When list_del corruption is detected, the corruption may happen because of the region of prev or next is destroyed. So, the address of prev/next is useful to find the destroyer.

---
 lib/list_debug.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
lib/list_debug.c +4 -4
index 3859bf6..a9cbcdb 100644
@@ -55,11 +55,11 @@ void __list_del_entry(struct list_head *entry)
 		"list_del corruption, %p->prev is LIST_POISON2 (%p)\n",
 		entry, LIST_POISON2) ||
 	    WARN(prev->next != entry,
-		"list_del corruption. prev->next should be %p, "
-		"but was %p\n", entry, prev->next) ||
+		"list_del corruption. prev->next should be %p, but was %p (prev=%p)\n",
+		entry, prev->next, prev) ||
 	    WARN(next->prev != entry,
-		"list_del corruption. next->prev should be %p, "
-		"but was %p\n", entry, next->prev))
+		"list_del corruption. next->prev should be %p, but was %p (next=%p)\n",
+		entry, next->prev, next))
 		return;
 
 	__list_del(prev, next);
Signature · 1 line
1.8.3.1