diff --git a/share/man/man9/smr.9 b/share/man/man9/smr.9 index 7b2ed65b436..32ef313c098 100644 --- a/share/man/man9/smr.9 +++ b/share/man/man9/smr.9 @@ -64,7 +64,7 @@ .Fo smr_synchronize .Fa "smr_t smr" .Fc -.Ft bool +.Ft void .Fo smr_wait .Fa "smr_t smr" .Fa "smr_seq_t goal" diff --git a/sys/kern/subr_smr.c b/sys/kern/subr_smr.c index cbbf185fee7..df252000567 100644 --- a/sys/kern/subr_smr.c +++ b/sys/kern/subr_smr.c @@ -579,6 +579,7 @@ smr_poll(smr_t smr, smr_seq_t goal, bool wait) */ atomic_thread_fence_acq(); + KASSERT(success || !wait, ("%s: blocking poll failed", __func__)); return (success); } diff --git a/sys/sys/smr.h b/sys/sys/smr.h index 1319e2bf465..2b6dbeb998d 100644 --- a/sys/sys/smr.h +++ b/sys/sys/smr.h @@ -241,11 +241,11 @@ void smr_destroy(smr_t smr); /* * Blocking wait for all readers to observe 'goal'. */ -static inline bool +static inline void smr_wait(smr_t smr, smr_seq_t goal) { - return (smr_poll(smr, goal, true)); + (void)smr_poll(smr, goal, true); } /*