diff --git a/freebsd/sys/sys/refcount.h b/freebsd/sys/sys/refcount.h index 4611664e..32f7f6e4 100644 --- a/freebsd/sys/sys/refcount.h +++ b/freebsd/sys/sys/refcount.h @@ -50,7 +50,7 @@ refcount_acquire(volatile u_int *count) { KASSERT(*count < UINT_MAX, ("refcount %p overflowed", count)); - atomic_add_acq_int(count, 1); + atomic_add_acq_int((volatile int *)count, 1); } static __inline int @@ -59,7 +59,7 @@ refcount_release(volatile u_int *count) u_int old; /* XXX: Should this have a rel membar? */ - old = atomic_fetchadd_int(count, -1); + old = atomic_fetchadd_int((volatile int *)count, -1); KASSERT(old > 0, ("negative refcount %p", count)); return (old == 1); }