Commit
6b584c2e changed the implementation of the "trace_chunk_exists"
command to use the then-new "exists" method of the trace chunk
registry. Before this change, the trace chunks were looked-up to check
for their existence.
Since the "exists" method doesn't require the caller to hold the rcu
read lock, it is acquired later on in the function. However, the rcu
read lock is still released on error when this function fails,
resulting in a double-unlock.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
/* Internal error. */
ERR("Failed to query the existence of a trace chunk");
ret_code = LTTCOMM_CONSUMERD_FATAL;
- goto end_rcu_unlock;
+ goto end;
}
DBG("Trace chunk %s locally",
chunk_exists_local ? "exists" : "does not exist");