*/
#include <linux/module.h>
-#include <linux/kprobes.h>
+#include <wrapper/kprobes.h>
#include <linux/slab.h>
#include <linux/kref.h>
#include <lttng-events.h>
#include <wrapper/vmalloc.h>
#include <wrapper/irqflags.h>
#include <lttng-tracer.h>
+#include <blacklist/kprobes.h>
enum lttng_kretprobe_type {
EVENT_ENTRY = 0,
enum lttng_kretprobe_type type)
{
struct lttng_krp *lttng_krp =
- container_of(krpi->rp, struct lttng_krp, krp);
+ container_of(lttng_get_kretprobe(krpi), struct lttng_krp, krp);
struct lttng_event *event =
lttng_krp->event[type];
struct lttng_probe_ctx lttng_probe_ctx = {
unsigned long parent_ip;
} payload;
- if (unlikely(!READ_ONCE(chan->session->active)))
+ if (unlikely(!LTTNG_READ_ONCE(chan->session->active)))
return 0;
- if (unlikely(!READ_ONCE(chan->enabled)))
+ if (unlikely(!LTTNG_READ_ONCE(chan->enabled)))
return 0;
- if (unlikely(!READ_ONCE(event->enabled)))
+ if (unlikely(!LTTNG_READ_ONCE(event->enabled)))
return 0;
- payload.ip = (unsigned long) krpi->rp->kp.addr;
+ payload.ip = (unsigned long) lttng_get_kretprobe(krpi)->kp.addr;
payload.parent_ip = (unsigned long) krpi->ret_addr;
lib_ring_buffer_ctx_init(&ctx, chan->chan, <tng_probe_ctx, sizeof(payload),
* Well.. kprobes itself puts the page fault handler on the blacklist,
* but we can never be too careful.
*/
- wrapper_vmalloc_sync_all();
+ wrapper_vmalloc_sync_mappings();
ret = register_kretprobe(<tng_krp->krp);
if (ret)