X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=lib%2Fringbuffer%2Ffrontend_internal.h;h=a2efee79a2f7f1ddcbc9ab31f5a7516ff5704cc0;hb=e650bcc12be0e62b166ffa1e5171fef2c437d267;hp=32785853b721bb3a6d0aebedce45607bab8efb0b;hpb=aece661f429d4ca54cf1e47bacc556679c28f342;p=lttng-modules.git diff --git a/lib/ringbuffer/frontend_internal.h b/lib/ringbuffer/frontend_internal.h index 32785853..a2efee79 100644 --- a/lib/ringbuffer/frontend_internal.h +++ b/lib/ringbuffer/frontend_internal.h @@ -307,9 +307,8 @@ void lib_ring_buffer_write_commit_counter(const struct lib_ring_buffer_config *c return; commit_seq_old = v_read(config, &buf->commit_hot[idx].seq); - while ((long) (commit_seq_old - commit_count) < 0) - commit_seq_old = v_cmpxchg(config, &buf->commit_hot[idx].seq, - commit_seq_old, commit_count); + if (likely((long) (commit_seq_old - commit_count) < 0)) + v_set(config, &buf->commit_hot[idx].seq, commit_count); } extern int lib_ring_buffer_create(struct lib_ring_buffer *buf,