intr_alloc: don't call ESP_LOG from a critical section
Calling ESP_LOG from a critical section leads to abort() in 4.1, and may also randomly abort() in earlier versions. Closes FCS-268
This commit is contained in:
parent
431066f164
commit
2b6c85e182
1 changed files with 2 additions and 2 deletions
|
@ -756,11 +756,11 @@ esp_err_t esp_intr_free(intr_handle_t handle)
|
||||||
}
|
}
|
||||||
//If nothing left, disable interrupt.
|
//If nothing left, disable interrupt.
|
||||||
if (handle->vector_desc->shared_vec_info==NULL) free_shared_vector=true;
|
if (handle->vector_desc->shared_vec_info==NULL) free_shared_vector=true;
|
||||||
ESP_LOGV(TAG, "esp_intr_free: Deleting shared int: %s. Shared int is %s", svd?"not found or last one":"deleted", free_shared_vector?"empty now.":"still in use");
|
ESP_EARLY_LOGV(TAG, "esp_intr_free: Deleting shared int: %s. Shared int is %s", svd?"not found or last one":"deleted", free_shared_vector?"empty now.":"still in use");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((handle->vector_desc->flags&VECDESC_FL_NONSHARED) || free_shared_vector) {
|
if ((handle->vector_desc->flags&VECDESC_FL_NONSHARED) || free_shared_vector) {
|
||||||
ESP_LOGV(TAG, "esp_intr_free: Disabling int, killing handler");
|
ESP_EARLY_LOGV(TAG, "esp_intr_free: Disabling int, killing handler");
|
||||||
#if CONFIG_SYSVIEW_ENABLE
|
#if CONFIG_SYSVIEW_ENABLE
|
||||||
if (!free_shared_vector) {
|
if (!free_shared_vector) {
|
||||||
void *isr_arg = xt_get_interrupt_handler_arg(handle->vector_desc->intno);
|
void *isr_arg = xt_get_interrupt_handler_arg(handle->vector_desc->intno);
|
||||||
|
|
Loading…
Reference in a new issue