Ying Han <yinghan@xxxxxxxxxx> writes: > The problem with small dmesg ring buffer like 512k is that only limited number > of task traces will be logged. Sometimes we lose important information only > because of too many duplicated stack traces. > > This patch tries to reduce the duplication of task stack trace in the dump > message by hashing the task stack. The hashtable is a 32k pre-allocated buffer > during bootup. Nice idea! This makes it a lot more readable too. Can we compress the register values too? (e.g. by not printing that many 0s and replacing ffff8 with <k> or so) In fact I don't remember needing the register values for anything. Maybe they could be just not printed by default? > #endif > read_lock(&tasklist_lock); > + > + spin_lock(&stack_hash_lock); The long hold lock scares me a little bit for a unstable system. Could you only hold it while hashing/unhashing? Also when you can't get it fall back to something else. -Andi -- ak@xxxxxxxxxxxxxxx -- Speaking for myself only -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>