From: Olivier Dion Date: Mon, 14 Aug 2023 20:40:30 +0000 (-0400) Subject: Phase 1 of deprecating liburcu-signal X-Git-Url: http://git.liburcu.org/?a=commitdiff_plain;h=97d13221f8a10e9ba38821dea2c2ff299d166c71;hp=97d13221f8a10e9ba38821dea2c2ff299d166c71;p=urcu.git Phase 1 of deprecating liburcu-signal The first phase of liburcu-signal deprecation consists of implementing it in term of liburcu-mb. In other words, liburcu-signal is identical to liburcu-mb at the exception of the function symbols and public header files. This is done by: 1) Removing the RCU_SIGNAL specific code in urcu.c 2) Making the RCU_MB specific code also specific to RCU_SIGNAL in urcu.c 3) Rewriting _urcu_signal_read_unlock_update_and_wakeup to use a atomic store with CMM_SEQ_CST instead of a store CMM_RELAXED with cmm_barrier() around it. We could keep the explicit barriers, but that would require to add some cmm_annotate annotations. Therefore, to be less intrusive in a public header file, simply use the CMM_SEQ_CST like for the mb flavor. Change-Id: Ie406f7df2f47da0a9f464df94b968ad9204821f3 Signed-off-by: Olivier Dion Signed-off-by: Mathieu Desnoyers ---