diff -Naur ktap-master.old/runtime/kp_obj.c ktap-master/runtime/kp_obj.c --- ktap-master.old/runtime/kp_obj.c 2015-12-03 15:26:28.000000000 -0800 +++ ktap-master/runtime/kp_obj.c 2016-04-22 20:03:46.509227970 -0700 @@ -44,7 +44,7 @@ /* memory allocation flag */ #define KTAP_ALLOC_FLAGS ((GFP_KERNEL | __GFP_NORETRY | __GFP_NOWARN) \ - & ~__GFP_WAIT) + & ~__GFP_RECLAIM) /* * TODO: It's not safe to call into facilities in the kernel at-large, --- ktap-master.old/runtime/kp_events.c 2015-12-03 15:26:28.000000000 -0800 +++ ktap-master/runtime/kp_events.c 2016-12-15 13:06:37.497077460 -0800 @@ -66,7 +66,7 @@ iter = kp_this_cpu_temp_buffer(ks); trace_seq_init(&iter->seq); - iter->ent = e->data->raw->data; + iter->ent = e->data->raw->frag.data; ev = &(call->event); if (ev) @@ -131,21 +131,21 @@ switch (event_fields->type) { case KTAP_EVENT_FIELD_TYPE_INT: { - struct trace_entry *entry = e->data->raw->data; + struct trace_entry *entry = e->data->raw->frag.data; void *value = (unsigned char *)entry + event_fields->offset; int n = *(int *)value; set_number(ra, n); return; } case KTAP_EVENT_FIELD_TYPE_LONG: { - struct trace_entry *entry = e->data->raw->data; + struct trace_entry *entry = e->data->raw->frag.data; void *value = (unsigned char *)entry + event_fields->offset; long n = *(long *)value; set_number(ra, n); return; } case KTAP_EVENT_FIELD_TYPE_STRING: { - struct trace_entry *entry = e->data->raw->data; + struct trace_entry *entry = e->data->raw->frag.data; ktap_str_t *ts; void *value = (unsigned char *)entry + event_fields->offset; ts = kp_str_newz(ks, (char *)value); --- ktap-master.old/runtime/kp_transport.c 2015-12-03 15:26:28.000000000 -0800 +++ ktap-master/runtime/kp_transport.c 2016-12-15 13:07:32.557078354 -0800 @@ -516,7 +516,7 @@ { struct ring_buffer *buffer = G(ks)->buffer; struct ring_buffer_event *event; - struct trace_entry *ev_entry = e->data->raw->data; + struct trace_entry *ev_entry = e->data->raw->frag.data; struct trace_entry *entry; int entry_size = e->data->raw->size;