diff options
Diffstat (limited to 'runtime/transport')
-rw-r--r-- | runtime/transport/ChangeLog | 7 | ||||
-rw-r--r-- | runtime/transport/transport.c | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/runtime/transport/ChangeLog b/runtime/transport/ChangeLog index e8e2a047..02f9f119 100644 --- a/runtime/transport/ChangeLog +++ b/runtime/transport/ChangeLog @@ -1,3 +1,10 @@ +2009-02-05 Frank Ch. Eigler <fche@elastic.org> + + PR9740/9816? + * transport.c (_stp_handle_start): Run alloc/free_vm_area() dummy + calls as workaround for kernel valloc/vfree bug. Suggested by + Masami Hiramat <mhiramat@redhat.com>. + 2009-01-06 Frank Ch. Eigler <fche@elastic.org> PR9699. diff --git a/runtime/transport/transport.c b/runtime/transport/transport.c index a572ef9c..97fbf860 100644 --- a/runtime/transport/transport.c +++ b/runtime/transport/transport.c @@ -64,6 +64,15 @@ static struct workqueue_struct *_stp_wq; static void _stp_handle_start(struct _stp_msg_start *st) { dbug_trans(1, "stp_handle_start\n"); + +#ifdef STAPCONF_VM_AREA + { /* PR9740: workaround for kernel valloc bug. */ + void *dummy; + dummy = alloc_vm_area (PAGE_SIZE); + free_vm_area (dummy); + } +#endif + _stp_target = st->target; st->res = probe_start(); if (st->res >= 0) |