]> sourceware.org Git - systemtap.git/commitdiff
Handle kprobe struct field symbol_name as either char * or const char *.
authorMark Wielaard <mjw@redhat.com>
Sun, 26 Apr 2009 15:17:04 +0000 (17:17 +0200)
committerMark Wielaard <mjw@redhat.com>
Sun, 26 Apr 2009 15:17:04 +0000 (17:17 +0200)
Older (2.6.18) based kernels defined struct kprobes symbol_name as char *,
but newer (2.6.27) based kernels defined the same field as const char *.

* tapsets.cxx (kprobe_derived_probe_group::emit_module_init):
  Always cast to char * when assigning to kprobes.symbol_name field.

tapsets.cxx

index 4aeff58417e8c5902a57b3d4686aa3312a7b4fb0..bc8df243a49ffd293cc68b5baa9b44984fa7fe90 100644 (file)
@@ -8560,7 +8560,7 @@ kprobe_derived_probe_group::emit_module_init (systemtap_session& s)
   s.op->newline() << "probe_point = sdp->pp;"; // for error messages
   s.op->newline() << "if (sdp->return_p) {";
   s.op->newline(1) << "kp->u.krp.kp.addr = addr;";
-  s.op->newline() << "kp->u.krp.kp.symbol_name = symbol_name;";
+  s.op->newline() << "kp->u.krp.kp.symbol_name = (char *) symbol_name;";
   s.op->newline() << "if (sdp->maxactive_p) {";
   s.op->newline(1) << "kp->u.krp.maxactive = sdp->maxactive_val;";
   s.op->newline(-1) << "} else {";
@@ -8584,7 +8584,7 @@ kprobe_derived_probe_group::emit_module_init (systemtap_session& s)
   s.op->newline(-1) << "} else {";
   // to ensure safeness of bspcache, always use aggr_kprobe on ia64
   s.op->newline(1) << "kp->u.kp.addr = addr;";
-  s.op->newline() << "kp->u.kp.symbol_name = symbol_name;";
+  s.op->newline() << "kp->u.kp.symbol_name = (char *) symbol_name;";
   s.op->newline() << "kp->u.kp.pre_handler = &enter_kprobe2_probe;";
   s.op->newline() << "#ifdef __ia64__";
   s.op->newline() << "kp->dummy.pre_handler = NULL;";
This page took 0.03447 seconds and 5 git commands to generate.