]> granicus.if.org Git - esp-idf/commitdiff
freertos: port: add check for portMUX address validity
authorMahavir Jain <mahavir@espressif.com>
Wed, 15 Nov 2017 05:45:31 +0000 (11:15 +0530)
committerMahavir Jain <mahavir@espressif.com>
Wed, 15 Nov 2017 05:46:45 +0000 (11:16 +0530)
Signed-off-by: Mahavir Jain <mahavir@espressif.com>
components/freertos/port.c

index ba406d88fe5f19ccc697b6fd6c95cd53ed7f96ad..734e3d66c94054013a64a8184d233d2d8c55497b 100644 (file)
@@ -298,6 +298,11 @@ void vPortAssertIfInISR()
  * For kernel use: Initialize a per-CPU mux. Mux will be initialized unlocked.
  */
 void vPortCPUInitializeMutex(portMUX_TYPE *mux) {
+#if defined(CONFIG_SPIRAM_SUPPORT)
+    // Check if mux belongs to internal memory (DRAM), prerequisite for atomic operations
+    configASSERT(esp_ptr_internal((const void *) mux));
+#endif
+
 #ifdef CONFIG_FREERTOS_PORTMUX_DEBUG
        ets_printf("Initializing mux %p\n", mux);
        mux->lastLockedFn="(never locked)";