Open hakehuang opened 1 year ago
Also fails on mimxrt595_evk_cm33 for zephyr-v3.4.0-3926-g4ba97c22555e
Also fails on mimxrt685_evk_cm33 for zephyr-v3.4.0-3926-g4ba97c22555e
related: #62885
This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.
This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.
bisect shows it broke on f0daf904bb0202c9247cdcf4d1186e0762a9db67 @keith-packard
I'd try disabling thread local storage (that requires building picolibc as a module); the changes required for that are more extensive than switching C libraries. Oh, and try to reproduce on main as well; that switches to the same malloc implementation as the minimal C library, further reducing differences.
I'd try disabling thread local storage (that requires building picolibc as a module); the changes required for that are more extensive than switching C libraries. Oh, and try to reproduce on main as well; that switches to the same malloc implementation as the minimal C library, further reducing differences.
This fails on the current main, and switching to minimal libc does fix the issue
This fails on the current main, and switching to minimal libc does fix the issue
Awesome. Can you try with picolibc and disabling thread local storage, or using minimal libc and enabling thread local storage? That's really the big difference between the two sets of defaults -- minimal libc leaves thread local storage disabled by default while picolibc enables it. Thread local storage is used in lots of places in the core kernel now, so turning that on changes a bunch of code paths.
This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.
This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.
@keith-packard, are there instructions for enabling/disabling the thread local storage between the two libs?
This fails on the current main, and switching to minimal libc does fix the issue
Awesome. Can you try with picolibc and disabling thread local storage, or using minimal libc and enabling thread local storage? That's really the big difference between the two sets of defaults -- minimal libc leaves thread local storage disabled by default while picolibc enables it. Thread local storage is used in lots of places in the core kernel now, so turning that on changes a bunch of code paths.
You can disable CONFIG_THREAD_LOCAL_STORAGE
as long as you aren't using C++ -- that will force Zephyr to build picolibc as a module instead of using the toolchain version. Other C libraries don't care as they don't have any TLS usage internally.
This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.
Describe the bug stack_protection_armv8m_mpu_stack_guard test is Failed on zephyr-v3.4.0-3926-g4ba97c22555e on mimxrt595_evk_cm33 testcase path is kernel/common/stack_protection_armv8m_mpu_stack_guard/fatal
see logs for details
To Reproduce
or
Expected behavior test pass
Impact
Logs and console output
Environment (please complete the following information):