dwarves: New upstream release: 1.12

The deleted patches are already upstream.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Arnaldo Carvalho de Melo 2018-08-31 16:11:11 -03:00
parent 8198153b9b
commit 305b9cee26
5 changed files with 17 additions and 98 deletions

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
dwarves-1.8.tar.bz2
/dwarves-1.9.tar.bz2
/dwarves-1.10.tar.bz2
/dwarves-1.12.tar.bz2

View File

@ -1,56 +0,0 @@
From be7b691756ff334705eb6faf51a196540e02e96c Mon Sep 17 00:00:00 2001
Message-Id: <be7b691756ff334705eb6faf51a196540e02e96c.1470234136.git.crobinso@redhat.com>
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Date: Thu, 16 Aug 2012 14:55:14 -0300
Subject: [PATCH] dwarf_loader: Don't stop processing after finding unsupported
tag
After emitting a warning that a tag is not supported __die__process_tag
was returning NULL, making die__process_unit think that the problem
was insufficient memory.
Introduce a global variable 'unsupported_tag' and return it instead,
that way die__process_unit can distinguish ENOMEM from unsupported tags.
Reported-by: Thiago Macieira <thiago.macieira@intel.com>
Tested-by: Thiago Macieira <thiago.macieira@intel.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
dwarf_loader.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dwarf_loader.c b/dwarf_loader.c
index e034237..e9e1671 100644
--- a/dwarf_loader.c
+++ b/dwarf_loader.c
@@ -1539,6 +1539,8 @@ static struct tag *die__create_new_function(Dwarf_Die *die, struct cu *cu)
return function ? &function->proto.tag : NULL;
}
+static struct tag unsupported_tag;
+
static struct tag *__die__process_tag(Dwarf_Die *die, struct cu *cu,
int top_level, const char *fn)
{
@@ -1578,7 +1580,7 @@ static struct tag *__die__process_tag(Dwarf_Die *die, struct cu *cu,
tag = die__create_new_variable(die, cu); break;
default:
__cu__tag_not_handled(die, fn);
- tag = NULL;
+ tag = &unsupported_tag;
break;
}
@@ -1595,6 +1597,9 @@ static int die__process_unit(Dwarf_Die *die, struct cu *cu)
if (tag == NULL)
return -ENOMEM;
+ if (tag == &unsupported_tag)
+ continue;
+
long id = -1;
cu__add_tag(cu, tag, &id);
cu__hash(cu, tag);
--
2.7.4

View File

@ -1,32 +0,0 @@
https://git.kernel.org/cgit/devel/pahole/pahole.git/commit/?id=943a0de0679a34b5e630f85cd01cca35c0d0e544
From 943a0de0679a34b5e630f85cd01cca35c0d0e544 Mon Sep 17 00:00:00 2001
From: Mark Wielaard <mjw@redhat.com>
Date: Wed, 18 Jun 2014 11:14:07 +0200
Subject: dwarves_fprintf: DW_TAG_mutable_type doesn't exist.
DW_TAG_mutable_type was a mistake in an early DWARFv3 draft and was
removed in the final version.
http://dwarfstd.org/ShowIssue.php?issue=050223.1
Signed-off-by: Mark Wielaard <mjw@redhat.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
diff --git a/dwarves_fprintf.c b/dwarves_fprintf.c
index 4d8e0f4..b746864 100644
--- a/dwarves_fprintf.c
+++ b/dwarves_fprintf.c
@@ -75,7 +75,6 @@ static const char *dwarf_tag_names[] = {
[DW_TAG_unspecified_type] = "unspecified_type",
[DW_TAG_partial_unit] = "partial_unit",
[DW_TAG_imported_unit] = "imported_unit",
- [DW_TAG_mutable_type] = "mutable_type",
[DW_TAG_condition] = "condition",
[DW_TAG_shared_type] = "shared_type",
#ifdef STB_GNU_UNIQUE
--
cgit v0.10.1

View File

@ -2,17 +2,14 @@
%define libver 1
Name: dwarves
Version: 1.10
Release: 15%{?dist}
Version: 1.12
Release: 1%{?dist}
License: GPLv2
Summary: Debugging Information Manipulation Tools
Summary: Debugging Information Manipulation Tools (pahole & friends)
Group: Development/Tools
URL: http://acmel.wordpress.com
Source: http://fedorapeople.org/~acme/dwarves/%{name}-%{version}.tar.bz2
Patch0: dwarves-remove-dw_tag_mutable_type.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1348200
Patch1: 0001-dwarf_loader-Don-t-stop-processing-after-finding-uns.patch
BuildRequires: gcc
BuildRequires: gcc
BuildRequires: cmake
BuildRequires: zlib-devel
BuildRequires: elfutils-devel >= 0.130
@ -29,6 +26,9 @@ limited to these.
It also extracts other information such as CPU cacheline alignment, helping
pack those structures to achieve more cache hits.
These tools can also be used to encode the BTF type information format used with
the Linux kernel bpf syscall, using 'pahole -J'.
A diff like tool, codiff can be used to compare the effects changes in source
code generate on the resulting binaries.
@ -52,8 +52,6 @@ Debugging information processing library development files.
%prep
%setup -q -c -n %{name}-%{version}
%patch0 -p1
%patch1 -p1
%build
%cmake .
@ -69,6 +67,7 @@ make install DESTDIR=%{buildroot}
%files
%doc README.ctracer
%doc README.btf
%doc NEWS
%defattr(0755,root,root,0755)
%{_bindir}/codiff
@ -113,6 +112,13 @@ make install DESTDIR=%{buildroot}
%{_libdir}/%{libname}_reorganize.so
%changelog
* Fri Aug 31 2018 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.12-1
- New release: 1.12
- union member cacheline boundaries for all inner structs
- print union member offsets
- Document 'pahole --hex'
- Encode BTF type format for use with eBPF
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.10-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

View File

@ -1 +1 @@
4a9c508f9343d057d00599e05fdb4ee5 dwarves-1.10.tar.bz2
SHA512 (dwarves-1.12.tar.bz2) = 20644344e694253b79ede65e489696a319f10eaf424af81882414ae6efeaf34a82132321430d647916b78f97ef504907b3bd32919420f2cd14384910e283ff27