wait_event-wake_up中间用一个atomic_t来作为唤醒的cond到底安不安全

1. 从时序上讲,atomic_t可以保障wait_event在醒来的cond判断的准确性,只要保证wake_up发生在对atomic写之后,而不需要dmb之类的屏障的

2. 但是还有有两个可怕的点在等待:

    2.1 首先是atomic写语句被编译器优化到了wake_up之前,所以需要用一下barrier(),分断编译器优化,但这样并不是就可以高枕无忧了

你可能感兴趣的:(wait_event-wake_up中间用一个atomic_t来作为唤醒的cond到底安不安全)