summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2009-09-18 16:13:24 +0200
committerMark Wielaard <mjw@redhat.com>2009-09-18 16:13:24 +0200
commit5ee3f305e81fd2e1953d8a74530326f728a33ce8 (patch)
tree89a231ac9b736ae366e1e5975f931333f21f1b46
parentf6efd18a0bcae7697651f794fd2d2ebcf66faf62 (diff)
downloadsystemtap-steved-5ee3f305e81fd2e1953d8a74530326f728a33ce8.tar.gz
systemtap-steved-5ee3f305e81fd2e1953d8a74530326f728a33ce8.tar.xz
systemtap-steved-5ee3f305e81fd2e1953d8a74530326f728a33ce8.zip
Always mark .probes section as writable.
Allocated section needs to be writable when creating pic shared objects because we store relocatable addresses in them. We used to make this read only for non-pic executables, but the new semaphore support relies on having a writable .probes section to put the enabled variables in. * includes/sys/sdt.h (ALLOCSEC): Define unconditionally as "aw".
-rw-r--r--includes/sys/sdt.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/includes/sys/sdt.h b/includes/sys/sdt.h
index 104973df..7affade6 100644
--- a/includes/sys/sdt.h
+++ b/includes/sys/sdt.h
@@ -18,12 +18,10 @@
#endif
/* Allocated section needs to be writable when creating pic shared objects
- because we store relocatable addresses in them. */
-#ifdef __PIC__
+ because we store relocatable addresses in them. We used to make this
+ read only for non-pic executables, but the new semaphore support relies
+ on having a writable .probes section to put the enabled variables in. */
#define ALLOCSEC "\"aw\""
-#else
-#define ALLOCSEC "\"a\""
-#endif
/* An allocated section .probes that holds the probe names and addrs. */
#define STAP_PROBE_DATA_(probe,guard,arg) \