Having a coverage counter tracking the value of the internal seq_next
should help in debugging.
Suggested-by: Justin Pettit <jpettit@ovn.org>
Signed-off-by: Jarno Rajahalme <jarno@ovn.org>
Acked-by: Ben Pfaff <blp@ovn.org>
#include <stdbool.h>
+#include "coverage.h"
#include "hash.h"
#include "hmap.h"
#include "latch.h"
#include "ovs-thread.h"
#include "poll-loop.h"
+COVERAGE_DEFINE(seq_change);
+
/* A sequence number object. */
struct seq {
uint64_t value OVS_GUARDED;
seq_init();
seq = xmalloc(sizeof *seq);
+
+ COVERAGE_INC(seq_change);
+
ovs_mutex_lock(&seq_mutex);
seq->value = seq_next++;
hmap_init(&seq->waiters);
seq_change(struct seq *seq)
OVS_EXCLUDED(seq_mutex)
{
+ COVERAGE_INC(seq_change);
+
ovs_mutex_lock(&seq_mutex);
seq->value = seq_next++;
seq_wake_waiters(seq);