Compare commits

...

No commits in common. "c8-beta" and "c8s" have entirely different histories.
c8-beta ... c8s

9 changed files with 5 additions and 35 deletions

View File

@ -1,2 +0,0 @@
f1e6143469813ef6ef96fddeee10fff8caa01c7d SOURCES/dyninst-11.0.0.tar.gz
a8289d9f3106f6f069ae62ba0f601b4a58bf3c7e SOURCES/testsuite-11.0.0.tar.gz

2
.gitignore vendored
View File

@ -1,2 +1,4 @@
SOURCES/dyninst-11.0.0.tar.gz SOURCES/dyninst-11.0.0.tar.gz
SOURCES/testsuite-11.0.0.tar.gz SOURCES/testsuite-11.0.0.tar.gz
/dyninst-11.0.0.tar.gz
/testsuite-11.0.0.tar.gz

View File

@ -1,25 +0,0 @@
rhbz1965455
commit 212576147 (refs/bisect/new)
Author: Xiaozhu Meng <mxz297@gmail.com>
Date: Wed May 26 11:26:28 2021 -0500
Skip parsing of blocks whose code buffer is null (#1033)
--- dyninst-11.0.0/parseAPI/src/Parser.C.orig
+++ dyninst-11.0.0/parseAPI/src/Parser.C
@@ -1703,6 +1703,14 @@ Parser::parse_frame_one_iteration(ParseFrame &frame, bool recursive) {
cur->region()->offset() + cur->region()->length() - curAddr;
const unsigned char* bufferBegin =
(const unsigned char *)(func->region()->getPtrToInstruction(curAddr));
+ if (bufferBegin == nullptr) {
+ // This can happen if jump table is over-approxiated.
+ // We ignore this block for now, and later the over-approximated block
+ // will be removed.
+ parsing_printf("\taddress %lx in a different region from the funcion entry at %lx, skip parsing\n", curAddr, func->addr());
+ continue;
+ }
+
InstructionDecoder dec(bufferBegin,size,frame.codereg->getArch());
if (!ahPtr)

View File

@ -7,7 +7,7 @@ Summary: An API for Run-time Code Generation
License: LGPLv2+ License: LGPLv2+
Name: %{?scl_prefix}dyninst Name: %{?scl_prefix}dyninst
Group: Development/Libraries Group: Development/Libraries
Release: 2%{?dist} Release: 1%{?dist}
URL: http://www.dyninst.org URL: http://www.dyninst.org
Version: 11.0.0 Version: 11.0.0
Exclusiveos: linux Exclusiveos: linux
@ -20,7 +20,6 @@ Patch1: testsuite-11.0.0-test12.patch
Patch2: testsuite-11.0.0-386.patch Patch2: testsuite-11.0.0-386.patch
Patch3: dyninst-11.0.0-dwarf.patch Patch3: dyninst-11.0.0-dwarf.patch
Patch4: dyninst-11.0.0-tbb.patch Patch4: dyninst-11.0.0-tbb.patch
Patch5: dyninst-11.0.0-nullbuf.patch
%global dyninst_base dyninst-%{version} %global dyninst_base dyninst-%{version}
%global testsuite_base testsuite-%{version} %global testsuite_base testsuite-%{version}
@ -111,9 +110,6 @@ making sure that dyninst works properly.
%patch2 -p1 -b .386 %patch2 -p1 -b .386
%patch3 -p1 -b .dwarf %patch3 -p1 -b .dwarf
%patch4 -p1 -b .tbb %patch4 -p1 -b .tbb
pushd %{dyninst_base}
%patch5 -p1 -b .null
popd
# cotire seems to cause non-deterministic gcc errors # cotire seems to cause non-deterministic gcc errors
# https://bugzilla.redhat.com/show_bug.cgi?id=1420551 # https://bugzilla.redhat.com/show_bug.cgi?id=1420551
@ -227,9 +223,6 @@ find %{buildroot}%{_libdir}/dyninst/testsuite/ \
%attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a %attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a
%changelog %changelog
* Mon Aug 16 2021 Frank Ch. Eigler <fche@redhat.com> - 11.0.0-2
- rhbz1993317, nullbuf disassembly errors
* Wed May 19 2021 Stan Cox <scox@redhat.com> - 11.0.0 * Wed May 19 2021 Stan Cox <scox@redhat.com> - 11.0.0
- Update to 11.0.0 - Update to 11.0.0

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (dyninst-11.0.0.tar.gz) = 30d73af656a597e4874f8b6bf0fb388e98ef591901ece9bbcaee389b9d09c44d1f3c3d323c959e6835971295eb8977d6a92c4bbb216b038126fbbc8360e9318d
SHA512 (testsuite-11.0.0.tar.gz) = bf3568e74eeb5ff7c5e8266f7843d1dd3563ab87e6275d4d586e2bbaaf965035356d869d886e527b3f000ba4213bdc035864c19f79bf648ff136d564c88a1018