Loading drivers/char/adsprpc.c +20 −1 Original line number Diff line number Diff line Loading @@ -1256,6 +1256,25 @@ static void fastrpc_notify_users(struct fastrpc_file *me) } static void fastrpc_notify_users_staticpd_pdr(struct fastrpc_file *me) { struct smq_invoke_ctx *ictx; struct hlist_node *n; spin_lock(&me->hlock); hlist_for_each_entry_safe(ictx, n, &me->clst.pending, hn) { if (ictx->msg.pid) complete(&ictx->work); } hlist_for_each_entry_safe(ictx, n, &me->clst.interrupted, hn) { if (ictx->msg.pid) complete(&ictx->work); } spin_unlock(&me->hlock); } static void fastrpc_notify_drivers(struct fastrpc_apps *me, int cid) { struct fastrpc_file *fl; Loading @@ -1278,7 +1297,7 @@ static void fastrpc_notify_pdr_drivers(struct fastrpc_apps *me, char *spdname) spin_lock(&me->hlock); hlist_for_each_entry_safe(fl, n, &me->drivers, hn) { if (fl->spdname && !strcmp(spdname, fl->spdname)) fastrpc_notify_users(fl); fastrpc_notify_users_staticpd_pdr(fl); } spin_unlock(&me->hlock); Loading Loading
drivers/char/adsprpc.c +20 −1 Original line number Diff line number Diff line Loading @@ -1256,6 +1256,25 @@ static void fastrpc_notify_users(struct fastrpc_file *me) } static void fastrpc_notify_users_staticpd_pdr(struct fastrpc_file *me) { struct smq_invoke_ctx *ictx; struct hlist_node *n; spin_lock(&me->hlock); hlist_for_each_entry_safe(ictx, n, &me->clst.pending, hn) { if (ictx->msg.pid) complete(&ictx->work); } hlist_for_each_entry_safe(ictx, n, &me->clst.interrupted, hn) { if (ictx->msg.pid) complete(&ictx->work); } spin_unlock(&me->hlock); } static void fastrpc_notify_drivers(struct fastrpc_apps *me, int cid) { struct fastrpc_file *fl; Loading @@ -1278,7 +1297,7 @@ static void fastrpc_notify_pdr_drivers(struct fastrpc_apps *me, char *spdname) spin_lock(&me->hlock); hlist_for_each_entry_safe(fl, n, &me->drivers, hn) { if (fl->spdname && !strcmp(spdname, fl->spdname)) fastrpc_notify_users(fl); fastrpc_notify_users_staticpd_pdr(fl); } spin_unlock(&me->hlock); Loading