when task is forked, it will copy his parent's kernel stack. Then when first time switch_to a new created task, will change to its kernel stack. But, in switch_to macro will " ldd [%%sp + 0x38], %%i6 ", for child task, stack frame is copyed from parent, so %%i6 will also the same as the parent's . so switch to child task will return to parent's kernel stack again ? --- Best regards Bo Liu _________________________________________________________________ Explore the seven wonders of the world http://search.msn.com/results.aspx?q=7+wonders+world&mkt=en-US&form=QBRE -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html