Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

stm32f4: UART DMA causes lockup in xtimer_drift test #4716

Closed
jnohlgard opened this issue Jan 29, 2016 · 2 comments
Closed

stm32f4: UART DMA causes lockup in xtimer_drift test #4716

jnohlgard opened this issue Jan 29, 2016 · 2 comments
Assignees
Labels
Platform: ARM Platform: This PR/issue effects ARM-based platforms Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)

Comments

@jnohlgard
Copy link
Member

Current tests/xtimer_drift in master does not run for me on stm32f4discovery, it hangs after trying to start the first slacker thread.
Disabling DMA in the UART TX by commenting out code seem to make the problem go away.

I suspect there is a race between the main thread using printf/puts right before the thread_create call and the newly created thread also using printf immediately after creation.

@jnohlgard jnohlgard added Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors) Platform: ARM Platform: This PR/issue effects ARM-based platforms labels Jan 29, 2016
@OlegHahm
Copy link
Member

Related to #4488?

@jnohlgard
Copy link
Member Author

no, after looking into this a bit further it seems like the problem is that periph/uart is not thread safe, it is just that we have not seen any symptoms until DMA was implemented in a driver.

jnohlgard pushed a commit to jnohlgard/RIOT that referenced this issue Jan 30, 2016
jnohlgard pushed a commit to jnohlgard/RIOT that referenced this issue Jan 30, 2016
jnohlgard pushed a commit that referenced this issue Feb 1, 2016
lebrush pushed a commit to lebrush/RIOT that referenced this issue Jun 27, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Platform: ARM Platform: This PR/issue effects ARM-based platforms Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)
Projects
None yet
Development

No branches or pull requests

3 participants