I face a problem：The program suddenly run into _int_kernel_isr() and I have no clue why it would happen.
Then I want to locate the code which creates the error, I check the PSP value to find out the PC address before run into the _int_kernel_isr(), now I can locate the error code, but I still don't know why it would happen.
After long time of struggle with the code, I try to increase the stack size of a task I created, and this problem solved.
So, my question is, how the stack size we assigned impact the task? How it work internally? If the stack size is not enough, why the system would cause a HardFault exception?