Resolves: #1991997
This commit is contained in:
parent
0fd400dcc1
commit
4696c4e80e
25
dyninst-11.0.0-nullbuf.patch
Normal file
25
dyninst-11.0.0-nullbuf.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
rhbz1991997
|
||||||
|
|
||||||
|
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)
|
@ -1,7 +1,7 @@
|
|||||||
Summary: An API for Run-time Code Generation
|
Summary: An API for Run-time Code Generation
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Name: dyninst
|
Name: dyninst
|
||||||
Release: 3%{?dist}
|
Release: 4%{?dist}
|
||||||
URL: http://www.dyninst.org
|
URL: http://www.dyninst.org
|
||||||
Version: 11.0.0
|
Version: 11.0.0
|
||||||
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
|
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
|
||||||
@ -13,6 +13,7 @@ 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-rosebc.patch
|
Patch4: dyninst-11.0.0-rosebc.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}
|
||||||
@ -85,6 +86,7 @@ popd
|
|||||||
pushd %{dyninst_base}
|
pushd %{dyninst_base}
|
||||||
%patch3 -p1 -b .dwarf
|
%patch3 -p1 -b .dwarf
|
||||||
%patch4 -p1 -b .rosebc
|
%patch4 -p1 -b .rosebc
|
||||||
|
%patch5 -p1 -b .nullbuf
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# cotire seems to cause non-deterministic gcc errors
|
# cotire seems to cause non-deterministic gcc errors
|
||||||
@ -189,6 +191,9 @@ find %{buildroot}%{_libdir}/dyninst/testsuite/ \
|
|||||||
%attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a
|
%attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Aug 10 2021 Stan Cox <scox@redhat.com> - 11.0.0-4
|
||||||
|
- Related: rhbz1991997
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.0-3
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.0-3
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
Related: rhbz#1991688
|
Related: rhbz#1991688
|
||||||
|
Loading…
Reference in New Issue
Block a user