On 05/03/2011 01:35 PM, Ying Han wrote:
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.
I like it. I often overlook information from staring myself blind on way too many duplicate 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.
This changelog doesn't tell the whole story of what the code does. It appears to store stack traces in the table, and use the hash to look them up. Somehow there's a global pointer, called cur_stack, involved too. The code looks correct, but somehow I'm not happy with it. Having said that, I also don't have ideas on how to make it better. If nobody else knows how to make this code better, maybe it should just be merged as is. I hope someone has ideas, though :) -- All rights reversed -- 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>