mirror of
https://github.com/apache/nuttx.git
synced 2026-05-23 14:58:13 +08:00
rptun: fix rptun sem post too much
_assert /media/liangchaozhong/ssd/86v1ap/nuttx/libs/libc/assert/lib_assert.c:36 nxsem_post /media/liangchaozhong/ssd/86v1ap/nuttx/sched/semaphore/sem_post.c:91 (discriminator 1) rptun_wakeup_rx /media/liangchaozhong/ssd/86v1ap/nuttx/drivers/rptun/rptun.c:374 rpmsg_virtio_rx_callback /media/liangchaozhong/ssd/86v1ap/nuttx/openamp/open-amp/lib/rpmsg/rpmsg_virtio.c:377 rproc_virtio_notified /media/liangchaozhong/ssd/86v1ap/nuttx/openamp/open-amp/lib/remoteproc/remoteproc_virtio.c:342 remoteproc_get_notification /media/liangchaozhong/ssd/86v1ap/nuttx/openamp/open-amp/lib/remoteproc/remoteproc.c:998 nxtask_start /media/liangchaozhong/ssd/86v1ap/nuttx/sched/task/task_start.c:129 Signed-off-by: ligd <liguiding1@xiaomi.com>
This commit is contained in:
@@ -292,7 +292,13 @@ static int rptun_thread(int argc, FAR char *argv[])
|
||||
|
||||
static void rptun_wakeup_rx(FAR struct rptun_priv_s *priv)
|
||||
{
|
||||
nxsem_post(&priv->semrx);
|
||||
int semcount;
|
||||
|
||||
nxsem_get_value(&priv->semrx, &semcount);
|
||||
if (semcount < 1)
|
||||
{
|
||||
nxsem_post(&priv->semrx);
|
||||
}
|
||||
}
|
||||
|
||||
static bool rptun_is_recursive(FAR struct rptun_priv_s *priv)
|
||||
|
||||
Reference in New Issue
Block a user