*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
*/
#include <urcu/compiler.h>
#define tp_rcu_read_lock_bp rcu_read_lock_bp
#define tp_rcu_read_unlock_bp rcu_read_unlock_bp
-#define tp_rcu_dereference_bp rcu_dereference_bp
+#define tp_rcu_dereference_bp rcu_dereference
#define TP_RCU_LINK_TEST() 1
#else /* _LGPL_SOURCE */
-#define tp_rcu_read_lock_bp tracepoint_dlopen.rcu_read_lock_sym_bp
-#define tp_rcu_read_unlock_bp tracepoint_dlopen.rcu_read_unlock_sym_bp
+#define tp_rcu_read_lock_bp tracepoint_dlopen_ptr->rcu_read_lock_sym_bp
+#define tp_rcu_read_unlock_bp tracepoint_dlopen_ptr->rcu_read_unlock_sym_bp
#define tp_rcu_dereference_bp(p) \
URCU_FORCE_CAST(__typeof__(p), \
- tracepoint_dlopen.rcu_dereference_sym_bp(URCU_FORCE_CAST(void *, p)))
+ tracepoint_dlopen_ptr->rcu_dereference_sym_bp(URCU_FORCE_CAST(void *, p)))
-#define TP_RCU_LINK_TEST() tp_rcu_read_lock_bp
+#define TP_RCU_LINK_TEST() (tracepoint_dlopen_ptr && tp_rcu_read_lock_bp)
#endif /* _LGPL_SOURCE */