From a27f0defa8eb8ed7bc6efba0da294fdab50602fb Mon Sep 17 00:00:00 2001 From: Xiang Xiao Date: Wed, 14 Jul 2021 01:50:22 +0800 Subject: [PATCH] sim/rptun: Trigger the callback only the sequnece number change Signed-off-by: Xiang Xiao Change-Id: I4fc8b876541ccb6ee12fa92145628eece0b90e3c --- arch/sim/src/sim/up_rptun.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/arch/sim/src/sim/up_rptun.c b/arch/sim/src/sim/up_rptun.c index 8af25e7cf42..fcbc28acd69 100644 --- a/arch/sim/src/sim/up_rptun.c +++ b/arch/sim/src/sim/up_rptun.c @@ -171,16 +171,20 @@ void up_rptun_loop(void) { if (dev->shmem != NULL) { + bool diff = false; + if (dev->master && dev->seq != dev->shmem->seqs) { dev->seq = dev->shmem->seqs; + diff = true; } else if (!dev->master && dev->seq != dev->shmem->seqm) { dev->seq = dev->shmem->seqm; + diff = true; } - if (dev->callback != NULL) + if (diff && dev->callback != NULL) { dev->callback(dev->arg, RPTUN_NOTIFY_ALL); }