Hi All, I have been working on uClinux kernel on ARM platform recently, and I want to decrease the kernel stack size from 8K to 4K, i.e. change the following code (in include/asm-arm/thread_info.h): #define THREAD_SIZE_ORDER 1 #define THREAD_SIZE 8192 to #define THREAD_SIZE_ORDER 0 #define THREAD_SIZE 4096
But after this modification, it fails to boot up linux on my ARM development board now. It stops at the position of pdflush_init(), and the functions calling chain is as following: ... ->pdflush_init()->start_one_pdflush_thread()->kthread_run()->kthread_create()->wait_for_completion()->wait_for_common()->do_wait_for_common()->schedule() In schedule() function, below code is executed repeatedly: if (unlikely(test_thread_flag(TIF_NEED_RESCHED))) goto need_resched; So the function schedule() can't return. BTW, my uclinux version is 2.6.25, and my ARM cpu is MMU-less. Can anyone give me some advice on this problem. I wonder if we can decrease THREAD_SIZE to 4K on ARM platform. Some one told me that ARM uClinux needs separate interrupt stack for 4K THREAD_SIZE. Is that true? -- Best Regards Erjian
_______________________________________________ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev