Loading drivers/misc/qseecom.c +24 −20 Original line number Diff line number Diff line Loading @@ -1895,6 +1895,7 @@ static int __qseecom_process_blocked_on_listener_legacy( ptr_app->blocked_on_listener_id = resp->data; /* sleep until listener is available */ do { qseecom.app_block_ref_cnt++; ptr_app->app_blocked = true; mutex_unlock(&app_access_lock); Loading @@ -1909,6 +1910,7 @@ static int __qseecom_process_blocked_on_listener_legacy( mutex_lock(&app_access_lock); ptr_app->app_blocked = false; qseecom.app_block_ref_cnt--; } while (list_ptr->listener_in_use); ptr_app->blocked_on_listener_id = 0; /* notify the blocked app that listener is available */ Loading Loading @@ -1959,6 +1961,7 @@ static int __qseecom_process_blocked_on_listener_smcinvoke( pr_debug("lsntr %d in_use = %d\n", resp->data, list_ptr->listener_in_use); /* sleep until listener is available */ do { qseecom.app_block_ref_cnt++; mutex_unlock(&app_access_lock); if (wait_event_freezable( Loading @@ -1971,6 +1974,7 @@ static int __qseecom_process_blocked_on_listener_smcinvoke( } mutex_lock(&app_access_lock); qseecom.app_block_ref_cnt--; } while (list_ptr->listener_in_use); /* notify TZ that listener is available */ pr_warn("Lsntr %d is available, unblock session(%d) in TZ\n", Loading Loading
drivers/misc/qseecom.c +24 −20 Original line number Diff line number Diff line Loading @@ -1895,6 +1895,7 @@ static int __qseecom_process_blocked_on_listener_legacy( ptr_app->blocked_on_listener_id = resp->data; /* sleep until listener is available */ do { qseecom.app_block_ref_cnt++; ptr_app->app_blocked = true; mutex_unlock(&app_access_lock); Loading @@ -1909,6 +1910,7 @@ static int __qseecom_process_blocked_on_listener_legacy( mutex_lock(&app_access_lock); ptr_app->app_blocked = false; qseecom.app_block_ref_cnt--; } while (list_ptr->listener_in_use); ptr_app->blocked_on_listener_id = 0; /* notify the blocked app that listener is available */ Loading Loading @@ -1959,6 +1961,7 @@ static int __qseecom_process_blocked_on_listener_smcinvoke( pr_debug("lsntr %d in_use = %d\n", resp->data, list_ptr->listener_in_use); /* sleep until listener is available */ do { qseecom.app_block_ref_cnt++; mutex_unlock(&app_access_lock); if (wait_event_freezable( Loading @@ -1971,6 +1974,7 @@ static int __qseecom_process_blocked_on_listener_smcinvoke( } mutex_lock(&app_access_lock); qseecom.app_block_ref_cnt--; } while (list_ptr->listener_in_use); /* notify TZ that listener is available */ pr_warn("Lsntr %d is available, unblock session(%d) in TZ\n", Loading