On Thu, 21 Sep 2023, Ondřej Surý via lttng-dev <lttng-dev@lists.lttng.org> 
wrote:
[...]
> It fails with:
>
> rculfhash.c:1189:2: error: address argument to atomic operation must be a 
> pointer to integer ('typeof (node_next)' (aka 'struct cds_lfht_node **') 
> invalid)
>         uatomic_or_mo(node_next, REMOVED_FLAG, CMM_RELEASE);
>         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../include/urcu/uatomic/builtins-generic.h:123:10: note: expanded from macro 
> 'uatomic_or_mo'
>                 (void) __atomic_or_fetch(cmm_cast_volatile(addr), mask, \
>                        ^                 ~~~~~~~~~~~~~~~~~~~~~~~
> rculfhash.c:1440:3: error: address argument to atomic operation must be a 
> pointer to integer ('typeof (fini_bucket_next)' (aka 'struct cds_lfht_node 
> **') invalid)
>                 uatomic_or(fini_bucket_next, REMOVED_FLAG);
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../include/urcu/uatomic/builtins-generic.h:130:2: note: expanded from macro 
> 'uatomic_or'
>         uatomic_or_mo(addr, mask, CMM_RELAXED)
>         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../include/urcu/uatomic/builtins-generic.h:123:10: note: expanded from macro 
> 'uatomic_or_mo'
>                 (void) __atomic_or_fetch(cmm_cast_volatile(addr), mask, \
>                        ^                 ~~~~~~~~~~~~~~~~~~~~~~~

Eh I thought we fixed that.  Clang is very strict about these things.

You can apply the following
<https://review.lttng.org/c/userspace-rcu/+/10911/1>.  That ought to fix
the issue until we merge the patch.
 
-- 
Olivier Dion
EfficiOS Inc.
https://www.efficios.com

_______________________________________________
lttng-dev mailing list
lttng-dev@lists.lttng.org
https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

Reply via email to