/* show the raw stack from the specified stack pointer  */
void show_stack(struct task_struct *task, unsigned long *sp)
/* show the raw stack from the specified stack pointer  */
void show_stack(struct task_struct *task, unsigned long *sp)
{
	unsigned long *stack;
	int i;
	if (!sp)
		sp = (unsigned long *) &sp;
	stack = sp;
	printk(KERN_EMERG "Stack:");
	for (i = 0; i < kstack_depth_to_print; i++) {
		if (((long) stack & (THREAD_SIZE - 1)) == 0)
			break;
		if ((i % 8) == 0)
			printk(KERN_EMERG "  ");
		printk("%08lx ", *stack++);
	}
	show_trace(sp);
}