summaryrefslogtreecommitdiffstatshomepage
path: root/tests/thread/thread_stdin.py
Commit message (Collapse)AuthorAge
* shared/tinyusb: Only run TinyUSB on the main thread if GIL is disabled.Angus Gratton2024-09-19
If GIL is disabled then there's threat of a race condition if some other code specifically requests USB processing (i.e. to unblock stdio), while a scheduled TinyUSB callback is already running on another thread. Relies on the change in the parent commit, where scheduler is restricted to main thread if GIL is disabled. Fixes #15390 - "TinyUSB callback can't recurse" exceptions on rp2 when using _thread module and USB serial I/O. Adds a unit test for stdin functioning correctly in threads (fails on rp2 port without this fix). This work was funded through GitHub Sponsors. Signed-off-by: Angus Gratton <angus@redyak.com.au>