Compare commits

...

6 Commits
master ... f19

Author SHA1 Message Date
Josh Stone 27a0f624fc Backport patches to improve dtrace's input flexibility
- Let dtrace use its old method if pyparsing fails (rhbz1131586)
- Allow dtrace -fPIC (rhbz1145993)
2014-09-25 12:24:40 -07:00
Josh Stone a0d02f20c1 Upstream release. 2014-09-08 09:44:27 -07:00
Josh Stone 3623d30c7b Rebuilt for dyninst-8.2.0 2014-08-20 14:15:54 -07:00
Frank Ch. Eigler 799f004cb2 PR16894: fix wordexp segv for unexpected stap -c 'CMD;CMD;CMD' 2014-05-02 12:08:21 -04:00
Frank Ch. Eigler 1b083f84cd Merge branch 'master' into f20
* master: (24 commits)
  %changelog time order tweakage
  upstream release
  Automated weekly systemtap rawhide release: 0.535.g9d4241d37eb1
  Automated weekly systemtap rawhide release: 0.491.gd0e1cd9d2fcb
  Automated weekly systemtap rawhide release: 0.458.g15afd83e99da
  Automated weekly systemtap rawhide release: 0.446.ga404e997732d
  Automated weekly systemtap rawhide release: 0.415.g7caa63eb91fd
  Automated weekly systemtap rawhide release: 0.376.g450056a8faa6
  Automated weekly systemtap rawhide release: 0.349.g2dd920e34796
  Automated weekly systemtap rawhide release: 0.318.g9ee1bfe9ac1c
  Automated weekly systemtap rawhide release: 0.296.g4f53b72c1d47
  Automated weekly systemtap rawhide release: 0.294.g09c16468eb17
  Automated weekly systemtap rawhide release: 0.274.gde6aa5194bf4
  Automated weekly systemtap rawhide release: 0.239.g873c6f49b639
  Automated weekly systemtap rawhide release: 0.191.g651a87924c22
  Automated weekly systemtap rawhide release: 0.186.gf1753911ada8
  Automated weekly systemtap rawhide release: 0.185.g4a3f6fd34498
  Automated weekly systemtap rawhide release: 0.151.g6ded984aa63f
  Automated weekly systemtap rawhide release: 0.123.gc60517ca2f99
  Automated weekly systemtap rawhide release: 0.87.g540c750cf41f
  ...

Conflicts:
	systemtap.spec
2014-04-30 14:56:08 -04:00
Frank Ch. Eigler f21357a6ea BZ1043212 2014-02-19 09:14:57 -05:00
4 changed files with 436 additions and 91 deletions

1
.gitignore vendored
View File

@ -97,3 +97,4 @@ systemtap-1.3.tar.gz
/systemtap-2.5-0.491.gd0e1cd9d2fcb.tar.gz
/systemtap-2.5-0.535.g9d4241d37eb1.tar.gz
/systemtap-2.5.tar.gz
/systemtap-2.6.tar.gz

View File

@ -1 +1 @@
a33c6f2ac5d6b77d8d02246685ee5105 systemtap-2.5.tar.gz
65e6745f0ec103758c711dd1d12fb6bf systemtap-2.6.tar.gz

View File

@ -0,0 +1,383 @@
From c486eff3f809b5ce544d5a032198e7680f2b7f2b Mon Sep 17 00:00:00 2001
From: Stan Cox <scox@redhat.com>
Date: Tue, 9 Sep 2014 15:07:44 -0400
Subject: [PATCH 1/3] Add -fpic -fPIC to the list of accepted but ignored
dtrace options.
* dtrace.in (main): Add ignore_options.
---
dtrace.in | 4 +++-
testsuite/systemtap.base/dtrace.exp | 8 ++++----
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/dtrace.in b/dtrace.in
index d5f189d4fc9e..2f9fb6307e28 100644
--- a/dtrace.in
+++ b/dtrace.in
@@ -305,6 +305,8 @@ def main():
s_filename = ""
includes = []
defines = []
+ ignore_options = ["-64", "-32", "-fpic", "-fPIC"]
+
while i < len(sys.argv):
if sys.argv[i] == "-o":
i += 1
@@ -330,7 +332,7 @@ def main():
HAVE_PYP = False
elif sys.argv[i] == "--types":
print sys.argv[0] + ": note: obsolete option --types used"
- elif sys.argv[i] == "-64" or sys.argv[i] == "-32":
+ elif sys.argv[i] in ignore_options:
pass # dtrace users sometimes pass these flags
elif sys.argv[i] == "--help":
dtrace_help()
diff --git a/testsuite/systemtap.base/dtrace.exp b/testsuite/systemtap.base/dtrace.exp
index 252dad90ede5..e029748100d6 100644
--- a/testsuite/systemtap.base/dtrace.exp
+++ b/testsuite/systemtap.base/dtrace.exp
@@ -53,12 +53,12 @@ set incpath "/tmp/dtrace_inc"
# -----------------------------------------------------------------
# test command line option and file handling
-verbose -log "$dtrace -G -s $dpath -o XXX.o"
-catch {exec $dtrace -G -s $dpath -o XXX.o}
+verbose -log "$dtrace -G -64 -fPIC -s $dpath -o XXX.o"
+catch {exec $dtrace -G -64 -fPIC -s $dpath -o XXX.o}
if {[file exists XXX.o]} then {
- pass "dtrace -G -o XXX.o"
+ pass "dtrace -G -64 -fPIC -o XXX.o"
} else {
- fail "dtrace -G -o XXX.o"
+ fail "dtrace -G -64 -fPIC -o XXX.o"
}
exec rm -f XXX.o
--
1.9.3
From 52cac9d8159a399b824201f4d2c98abe89a01767 Mon Sep 17 00:00:00 2001
From: Stan Cox <scox@redhat.com>
Date: Tue, 23 Sep 2014 13:42:54 -0400
Subject: [PATCH 2/3] Ignore C declarations in .d file and use string pattern
matching as a fallback mechanism.
* dtrace.in (_PypProvider): SkipTo the provider{...}
(main): If pyparsing fails, then fallback to pattern matching.
* dtrace.exp: Add a fallback test.
---
dtrace.in | 39 +++++++++++++++++++++++++++---------
testsuite/systemtap.base/dtrace.exp | 40 +++++++++++++++++++++++++++++++++++++
2 files changed, 70 insertions(+), 9 deletions(-)
diff --git a/dtrace.in b/dtrace.in
index 2f9fb6307e28..04ace92181d9 100644
--- a/dtrace.in
+++ b/dtrace.in
@@ -29,13 +29,13 @@ try:
from pyparsing import alphas, cStyleComment, delimitedList, Group, \
Keyword, lineno, Literal, nestedExpr, nums, oneOf, OneOrMore, \
Optional, ParseException, ParserElement, restOfLine, restOfLine, \
- Suppress, Word, ZeroOrMore
+ Suppress, SkipTo, Word, ZeroOrMore
HAVE_PYP = True
except ImportError:
HAVE_PYP = False
-# Common file creation methods for pyparsing and regexparsing
+# Common file creation methods for pyparsing and string pattern matching
class _HeaderCreator(object):
def init_semaphores(self, fdesc):
@@ -149,7 +149,7 @@ class _PypProvider(_HeaderCreator):
provider_decl = (PROVIDER + Optional(ident)
+ lbrace + Group(probe_decls) + rbrace + Optional(semi))
- dtrace_statement = Group(decls | provider_decl)
+ dtrace_statement = Group (SkipTo("provider", include=False) + provider_decl)
self.dtrace_statements = ZeroOrMore(dtrace_statement)
cplusplus_linecomment = Literal("//") + restOfLine
@@ -167,7 +167,10 @@ class _PypProvider(_HeaderCreator):
for asti in self.ast:
if len(asti) == 0:
continue
- elif asti[0] == "provider":
+ # ignore SkipTo token
+ if asti[0] != "provider":
+ del asti[0]
+ if asti[0] == "provider":
# list of probes
for prb in asti[2]:
semaphores_def += self.add_semaphore(asti[1], prb[1])
@@ -186,15 +189,18 @@ class _PypProvider(_HeaderCreator):
self.ast = self.bnf.parseFile(provider).asList()
except ParseException, err:
if len(self.current_probe):
- print "%s:%s:%d: syntax error near:\nprobe %s\n" % (sys.argv[0],provider, self.current_lineno, self.current_probe)
+ print "Warning: %s:%s:%d: syntax error near:\nprobe %s\n" % (sys.argv[0],provider, self.current_lineno, self.current_probe)
else:
- print "%s:%s:%d syntax error near:\n%s\n" % (sys.argv[0],provider,err.lineno, err.line)
- sys.exit(1)
+ print "Warning: %s:%s:%d syntax error near:\n%s\n" % (sys.argv[0],provider,err.lineno, err.line)
+ raise ParseException, err
probes_def = ""
for asti in self.ast:
if len(asti) == 0:
continue
+ # ignore SkipTo token
+ if asti[0] != "provider":
+ del asti[0]
if asti[0] == "provider":
# list of probes
for prb in asti[2]:
@@ -369,14 +375,29 @@ def main():
providers = _PypProvider()
else:
providers = _ReProvider()
- providers.probe_write(s_filename, filename + suffix)
+ while True:
+ try:
+ providers.probe_write(s_filename, filename + suffix)
+ break;
+ # complex C declarations can fool the pyparsing grammar.
+ # we could increase the complexity of the grammar
+ # instead we fall back to string pattern matching
+ except ParseException, err:
+ print "Warning: Proceeding as if --no-pyparsing was given.\n"
+ providers = _ReProvider()
elif build_source:
if HAVE_PYP:
providers = _PypProvider()
else:
providers = _ReProvider()
(ignore, fname) = mkstemp(suffix=".h")
- providers.probe_write(s_filename, fname)
+ while True:
+ try:
+ providers.probe_write(s_filename, fname)
+ break;
+ except ParseException, err:
+ print "Warning: Proceeding as if --no-pyparsing was given.\n"
+ providers = _ReProvider()
if not keep_temps:
os.remove(fname)
else:
diff --git a/testsuite/systemtap.base/dtrace.exp b/testsuite/systemtap.base/dtrace.exp
index e029748100d6..60cab3f5abf2 100644
--- a/testsuite/systemtap.base/dtrace.exp
+++ b/testsuite/systemtap.base/dtrace.exp
@@ -207,6 +207,46 @@ if { $ok == 4} {
}
exec rm -f XXX.h
+set ok 0
+set pypath "/tmp/pypath.d"
+set $fp [open $pypath "w"]
+puts $fp "
+#include <sys/types.h>
+
+provider alpha {
+ probe request__start(string, uint8_t, uint16_t, int, void *);
+ probe request__one(string, uint8_t, uint32_t, int, int);
+ probe client__two(int, int);
+ probe client__three(int, string, pid_t, zoneid_t);
+ probe input__stop(int, int, uint32_t, uint32_t, int8_t, uint8_t*, double*);
+};
+
+#ifdef DCL_AFTER_PROVIDER
+typedef unsigned short int __u_short;
+typedef const static unsigned short __u_c_short;
+#endif
+
+#pragma D attributes Unknown provider alpha provider
+"
+close $fp
+verbose -log "$dtrace -C -h -s $pypath -o XXX.h"
+spawn $dtrace -C -DDCL_AFTER_PROVIDER -h -s $pypath -o XXX.h
+expect {
+ -re {Warning.*syntax error} {incr ok; exp_continue}
+ -re {Warning.*--no-pyparsing} {incr ok; exp_continue}
+ eof { }
+}
+catch {close}; catch {wait}
+if {[file exists XXX.h]} then {
+ incr ok;
+}
+if { $ok == 3} {
+ pass "dtrace parser check"
+} else {
+ fail "dtrace parser check $ok"
+}
+exec rm -f XXX.h
+
verbose -log "$dtrace -I$incpath -G -s $idpath"
catch {exec $dtrace -G -s $dpath}
if {[file exists test.o]} then {
--
1.9.3
From 3525152408f15e23dcffe2371bbd575f1646d691 Mon Sep 17 00:00:00 2001
From: Stan Cox <scox@redhat.com>
Date: Thu, 25 Sep 2014 13:47:04 -0400
Subject: [PATCH 3/3] Add pyparsing / no-parsing compatibility test.
* dtrace.exp: Add pyparsing compatibility test.
---
testsuite/systemtap.base/dtrace.exp | 93 ++++++++++++++++++++++++++++---------
1 file changed, 72 insertions(+), 21 deletions(-)
diff --git a/testsuite/systemtap.base/dtrace.exp b/testsuite/systemtap.base/dtrace.exp
index 60cab3f5abf2..e455c298737a 100644
--- a/testsuite/systemtap.base/dtrace.exp
+++ b/testsuite/systemtap.base/dtrace.exp
@@ -8,6 +8,8 @@ if {[installtest_p]} {
set dtrace ../dtrace
}
+# Create the test .d files
+
exec mkdir -p /tmp/dtrace
set dpath "/tmp/dtrace/test.d"
@@ -48,6 +50,29 @@ provider tstsyscall
"
close $fp
+set pypath "/tmp/pypath.d"
+set $fp [open $pypath "w"]
+puts $fp "
+#include <sys/types.h>
+
+provider alpha {
+ probe request__start(string, uint8_t, uint16_t, int, void *);
+ probe request__one(string, uint8_t, uint32_t, int, int);
+ probe client__two(int, int);
+ probe client__three(int, string, pid_t, zoneid_t);
+ probe input__stop(int, int, uint32_t, uint32_t, int8_t, uint8_t*, double*);
+};
+
+#ifdef DCL_AFTER_PROVIDER
+typedef unsigned short int __u_short;
+typedef const static unsigned short __u_c_short;
+#endif
+
+#pragma D attributes Unknown provider alpha provider
+"
+close $fp
+
+
set incpath "/tmp/dtrace_inc"
# -----------------------------------------------------------------
@@ -156,6 +181,9 @@ if { $ok != 0} {
fail "dtrace CFLAGS= CC="
}
+# -----------------------------------------------------------------
+# test -h header file creation
+
set ok 0
verbose -log "$dtrace -C -h -s $dpath -o XXX.h"
catch {exec $dtrace -C -h -s $dpath -o XXX.h}
@@ -189,6 +217,9 @@ if { $ok == 4} {
}
exec rm -f XXX.h
+# -----------------------------------------------------------------
+# test --no-pyparsing
+
set ok 0
verbose -log "$dtrace -C --no-pyparsing -I$incpath -h -s $idpath -o XXX.h"
catch {exec $dtrace -C --no-pyparsing -I$incpath -h -s $idpath -o XXX.h}
@@ -207,28 +238,10 @@ if { $ok == 4} {
}
exec rm -f XXX.h
-set ok 0
-set pypath "/tmp/pypath.d"
-set $fp [open $pypath "w"]
-puts $fp "
-#include <sys/types.h>
-
-provider alpha {
- probe request__start(string, uint8_t, uint16_t, int, void *);
- probe request__one(string, uint8_t, uint32_t, int, int);
- probe client__two(int, int);
- probe client__three(int, string, pid_t, zoneid_t);
- probe input__stop(int, int, uint32_t, uint32_t, int8_t, uint8_t*, double*);
-};
-
-#ifdef DCL_AFTER_PROVIDER
-typedef unsigned short int __u_short;
-typedef const static unsigned short __u_c_short;
-#endif
+# -----------------------------------------------------------------
+# test fallback to --no-pyparsing
-#pragma D attributes Unknown provider alpha provider
-"
-close $fp
+set ok 0
verbose -log "$dtrace -C -h -s $pypath -o XXX.h"
spawn $dtrace -C -DDCL_AFTER_PROVIDER -h -s $pypath -o XXX.h
expect {
@@ -247,6 +260,9 @@ if { $ok == 3} {
}
exec rm -f XXX.h
+# -----------------------------------------------------------------
+# test -G object file creation
+
verbose -log "$dtrace -I$incpath -G -s $idpath"
catch {exec $dtrace -G -s $dpath}
if {[file exists test.o]} then {
@@ -256,5 +272,40 @@ if {[file exists test.o]} then {
}
exec rm -f test.o
+# -----------------------------------------------------------------
+# test dtrace for pyparsing / --no-pyparsing compatibility
+
+set ok 0
+set dfiles {dtrace}
+foreach i $dfiles {
+ verbose -log "$dtrace $srcdir/$subdir/$i.d"
+ catch {exec $dtrace -C -h -s $srcdir/$subdir/$i.d -o $i-1.h}
+ catch {exec $dtrace -C -h --no-pyparsing -s $srcdir/$subdir/$i.d -o $i-2.h}
+ spawn diff -wqs $i-1.h $i-2.h
+ expect {
+ -re {Files.*identical} {incr ok; exp_continue}
+ eof { }
+ }
+ catch {exec $dtrace -C -G -s $srcdir/$subdir/$i.d -o $i-1.o}
+ catch {exec $dtrace -C -G --no-pyparsing -s $srcdir/$subdir/$i.d -o $i-2.o}
+ verbose -log "exec nm $i-1.o > $i-1.od"
+ catch {exec nm $i-1.o > $i-1.od}
+ catch {exec nm $i-2.o > $i-2.od}
+ spawn diff -qs $i-1.od $i-2.od
+ expect {
+ -re {Files.*identical} {incr ok; exp_continue}
+ eof { }
+ }
+ catch {exec /bin/rm $i-1.h $i-2.h $i-1.o $i-2.o}
+}
+if { $ok == 2} {
+ pass "dtrace known uses"
+} else {
+ fail "dtrace known uses ${ok}"
+}
+
+# -----------------------------------------------------------------
+# cleanup
+
exec /bin/rm -r /tmp/dtrace /tmp/dtrace_inc
# -----------------------------------------------------------------
--
1.9.3

View File

@ -21,15 +21,14 @@
%else
%{!?publican_brand: %global publican_brand fedora}
%endif
%ifnarch s390 s390x %{arm} aarch64 ppc64le
%ifarch %{ix86} x86_64 ppc ppc64
%{!?with_dyninst: %global with_dyninst 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
%else
%{!?with_dyninst: %global with_dyninst 0}
%endif
%{!?with_systemd: %global with_systemd 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
%{!?with_emacsvim: %global with_emacsvim 1}
%{!?with_java: %global with_java 1}
# don't want to build runtime-virthost for f18 or RHEL5/6
%{!?with_emacsvim: %global with_emacsvim 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
%{!?with_java: %global with_java 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
%{!?with_virthost: %global with_virthost 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
%{!?with_virtguest: %global with_virtguest 1}
%{!?with_dracut: %global with_dracut 0%{?fedora} >= 19 || 0%{?rhel} >= 7}
@ -40,6 +39,7 @@
%{!?with_mokutil: %global with_mokutil 0}
%{!?with_openssl: %global with_openssl 0}
%endif
%{!?with_pyparsing: %global with_pyparsing 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
%ifarch ppc64le
%global with_virthost 0
@ -67,8 +67,8 @@
%define dracutstap %{dracutlibdir}/modules.d/99stap
Name: systemtap
Version: 2.5
Release: 1%{?dist}
Version: 2.6
Release: 2%{?dist}
# for version, see also configure.ac
@ -103,6 +103,8 @@ License: GPLv2+
URL: http://sourceware.org/systemtap/
Source: ftp://sourceware.org/pub/systemtap/releases/systemtap-%{version}.tar.gz
Patch2: systemtap-2.6-dtrace-flexibility.patch
# Build*
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: gcc-c++
@ -278,6 +280,9 @@ Summary: Static probe support tools
Group: Development/System
License: GPLv2+ and Public Domain
URL: http://sourceware.org/systemtap/
%if %{with_pyparsing}
Requires: pyparsing
%endif
%description sdt-devel
This package includes the <sys/sdt.h> header file used for static
@ -302,7 +307,7 @@ Requires: strace
# that provides nc has changed over time (from 'nc' to
# 'nmap-ncat'). So, we'll do a file-based require.
Requires: /usr/bin/nc
%ifnarch ia64 ppc64le
%ifnarch ia64 ppc64le aarch64
Requires: prelink
%endif
# testsuite/systemtap.server/client.exp needs avahi
@ -387,6 +392,8 @@ systemtap-runtime-virthost machine to execute systemtap scripts.
%prep
%setup -q %{?setup_elfutils}
%patch2 -p1
%if %{with_bundled_elfutils}
cd elfutils-%{elfutils_version}
%patch1 -p1
@ -771,8 +778,8 @@ exit 0
%triggerin runtime-java -- java-1.7.0-openjdk, java-1.6.0-openjdk
for f in %{_libexecdir}/systemtap/libHelperSDT_*.so; do
%ifarch %{ix86} ppc64
%ifarch ppc64
%ifarch %{ix86} ppc64 ppc64le
%ifarch ppc64 ppc64le
arch=ppc64
%else
arch=i386
@ -790,8 +797,8 @@ done
%triggerun runtime-java -- java-1.7.0-openjdk, java-1.6.0-openjdk
for f in %{_libexecdir}/systemtap/libHelperSDT_*.so; do
%ifarch %{ix86} ppc64
%ifarch ppc64
%ifarch %{ix86} ppc64 ppc64le
%ifarch ppc64 ppc64le
arch=ppc64
%else
arch=i386
@ -808,8 +815,8 @@ done
%triggerpostun runtime-java -- java-1.7.0-openjdk, java-1.6.0-openjdk
# Restore links for any JDKs remaining after a package removal:
for f in %{_libexecdir}/systemtap/libHelperSDT_*.so; do
%ifarch %{ix86} ppc64
%ifarch ppc64
%ifarch %{ix86} ppc64 ppc64le
%ifarch ppc64 ppc64le
arch=ppc64
%else
arch=i386
@ -864,7 +871,9 @@ done
%dir %attr(0755,stap-server,stap-server) %{_localstatedir}/log/stap-server
%ghost %config(noreplace) %attr(0644,stap-server,stap-server) %{_localstatedir}/log/stap-server/log
%ghost %attr(0755,stap-server,stap-server) %{_localstatedir}/run/stap-server
%doc README README.unprivileged AUTHORS NEWS COPYING
%doc README README.unprivileged AUTHORS NEWS
%{!?_licensedir:%global license %%doc}
%license COPYING
%files devel -f systemtap.lang
@ -880,7 +889,9 @@ done
%{_mandir}/man7/error*
%{_mandir}/man7/stappaths.7*
%{_mandir}/man7/warning*
%doc README README.unprivileged AUTHORS NEWS COPYING
%doc README README.unprivileged AUTHORS NEWS
%{!?_licensedir:%global license %%doc}
%license COPYING
%if %{with_java}
%dir %{_libexecdir}/systemtap
%{_libexecdir}/systemtap/libHelperSDT_*.so
@ -921,12 +932,16 @@ done
%if %{with_dyninst}
%{_mandir}/man8/stapdyn.8*
%endif
%doc README README.security AUTHORS NEWS COPYING
%doc README README.security AUTHORS NEWS
%{!?_licensedir:%global license %%doc}
%license COPYING
%files client -f systemtap.lang
%defattr(-,root,root)
%doc README README.unprivileged AUTHORS NEWS COPYING examples
%doc README README.unprivileged AUTHORS NEWS examples
%{!?_licensedir:%global license %%doc}
%license COPYING
%if %{with_docs}
%doc docs.installed/*.pdf
%doc docs.installed/tapsets/*.html
@ -972,7 +987,9 @@ done
%{_includedir}/sys/sdt.h
%{_includedir}/sys/sdt-config.h
%{_mandir}/man1/dtrace.1*
%doc README AUTHORS NEWS COPYING
%doc README AUTHORS NEWS
%{!?_licensedir:%global license %%doc}
%license COPYING
%files testsuite
@ -1017,82 +1034,26 @@ done
# http://sourceware.org/systemtap/wiki/SystemTapReleases
%changelog
* Thu Sep 25 2014 Josh Stone <jistone@redhat.com> - 2.6-2
- Backport patches to improve dtrace's input flexibility
- Let dtrace use its old method if pyparsing fails (rhbz1131586)
- Allow dtrace -fPIC (rhbz1145993)
* Fri Sep 05 2014 Josh Stone <jistone@redhat.com> - 2.6-1
- Upstream release.
* Wed Aug 20 2014 Josh Stone <jistone@redhat.com> - 2.5-3
- Rebuilt for dyninst-8.2.0
* Fri May 02 2014 Frank Ch. Eigler <fche@redhat.com> - 2.5-2
- Include fix for upstream http://sourceware.org/PR16894
* Wed Apr 30 2014 Jonathan Lebon <jlebon@redhat.com> - 2.5-1
- Upstream release. See wiki page below for detailed notes.
http://sourceware.org/systemtap/wiki/SystemTapReleases
* Mon Apr 28 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.535.g9d4241d37eb1
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Tue Apr 22 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.491.gd0e1cd9d2fcb
- Automated weekly rawhide release
* Mon Apr 14 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.458.g15afd83e99da
- Automated weekly rawhide release
* Sat Apr 05 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.446.ga404e997732d
- Automated weekly rawhide release
* Mon Mar 31 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.415.g7caa63eb91fd
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Mar 24 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.376.g450056a8faa6
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Mar 17 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.349.g2dd920e34796
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Mar 10 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.318.g9ee1bfe9ac1c
- Automated weekly rawhide release
* Tue Mar 04 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.296.g4f53b72c1d47
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Mar 03 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.294.g09c16468eb17
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Feb 24 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.274.gde6aa5194bf4
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Tue Feb 18 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.239.g873c6f49b639
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Feb 10 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.191.g651a87924c22
- Automated weekly rawhide release
* Mon Feb 03 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.186.gf1753911ada8
- Automated weekly rawhide release
* Mon Jan 27 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.185.g4a3f6fd34498
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Jan 20 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.151.g6ded984aa63f
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Jan 13 2014 Lukas Berk <lberk@redhat.com> - 2.5-0.123.gc60517ca2f99
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Dec 16 2013 Lukas Berk <lberk@redhat.com> - 2.5-0.87.g540c750cf41f
- Automated weekly rawhide release
* Mon Dec 09 2013 Lukas Berk <lberk@redhat.com> - 2.5-0.78.ga7dd945a54f2
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Mon Dec 02 2013 Lukas Berk <lberk@redhat.com> - 2.5-0.70.g2200b70
- Automated weekly rawhide release
- Applied spec changes from upstream git
* Wed Feb 19 2014 Frank Ch. Eigler <fche@redhat.com> - 2.4-2
- Backport fix for BZ1043212: use of systemd-tmpfiles --create without PATH
* Wed Nov 06 2013 Frank Ch. Eigler <fche@redhat.com> - 2.4-1
- Upstream release.