esp-idf/components
Ivan Grokhotkov 47b8f78cb0 Merge branch 'bugfix/flash_op_deadlock' into 'master'
spi_flash: fix race condition in s_flash_op_complete access

Flash operation complete flag was cleared by the CPU initiating flash operation. If the other core was running an ISR, then IPC task could be late to enter the loop to check `s_flash_op_complete` by the time next flash operation started. This would cause a deadlock, as the IPC task would still be waiting for `s_flash_op_complete` to be set (which was already cleared by the next flash operation), while the flash operation task would be blocked waiting for IPC task to set `s_flash_op_can_start`.

If the flag is cleared on the CPU waiting on this flag, then the race condition can not happen.

See merge request !615
2017-03-31 16:02:26 +08:00
..
2017-03-13 17:23:29 +08:00
2017-01-11 15:03:14 +08:00
2016-11-16 15:57:34 +11:00
2017-03-08 09:54:40 +11:00
2017-03-07 10:18:47 +11:00
2017-01-09 17:51:48 +08:00