This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug releng/25581] USDT probes when /proc/[pid]/mem not writeable


https://sourceware.org/bugzilla/show_bug.cgi?id=25581

Dale Hamel <dale.hamel at srvthe dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #12306|0                           |1
        is obsolete|                            |

--- Comment #5 from Dale Hamel <dale.hamel at srvthe dot net> ---
Created attachment 12307
  --> https://sourceware.org/bugzilla/attachment.cgi?id=12307&action=edit
Additional fixes

Ran it and double checked the generated headers.

Sample without -S flag:

```

/* RUBY_METHOD_ENTRY ( const char *classname, const char *methodname, const
char *filename, int lineno ) */
#if defined STAP_SDT_V1
#define ruby_method__entry_semaphore method__entry_semaphore
#else
#define RUBY_METHOD_ENTRY_ENABLED() __builtin_expect
(ruby_method__entry_semaphore, 0)
#endif
__extension__ extern unsigned short ruby_method__entry_semaphore __attribute__
((unused)) __attribute__ ((section (".probes")));
#define RUBY_METHOD_ENTRY(arg1, arg2, arg3, arg4) \
DTRACE_PROBE4 (ruby, method__entry, arg1, arg2, arg3, arg4)

```

With the -S flag:

```

#define _SDT_HAS_SEMAPHORES 0


#define STAP_HAS_SEMAPHORES 0 /* deprecated */

#define __PLATFORM_UPROBE_ENABLED(provider, name)\
   provider##_##name##_check != 0 && \
   ((*(char *) __##provider##_##name##_asm_check) & 0x90) != 0x90


#include <sys/sdt.h>

/* RUBY_METHOD_ENTRY ( const char *classname, const char *methodname, const
char *filename, int lineno ) */
#define RUBY_METHOD_ENTRY_ENABLED() __PLATFORM_UPROBE_ENABLED(ruby,
method__entry)
#define RUBY_METHOD_ENTRY(arg1, arg2, arg3, arg4) \
DTRACE_PROBE4 (ruby, method__entry, arg1, arg2, arg3, arg4)

void __ruby_method__entry_asm_check();
```

-- 
You are receiving this mail because:
You are the assignee for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]