- update to 1.18_15g040fd7f (bsc#1177921):
* btf_encoder: Support cross-compiled ELF binaries with different endianness * strings: use BTF's string APIs for strings management * strings: Rename strings.h to avoid clashing with /usr/include/strings.h * dwarf_loader: increase the size of lookup hash map * btf_encoder: revamp how per-CPU variables are encoded * btf_encoder: Discard CUs after BTF encoding * btf_encoder: Fix emitting __ARRAY_SIZE_TYPE__ as index range type * btf_encoder: Use libbpf APIs to encode BTF type info * btf_loader: Use libbpf to load BTF * dwarves: Expose and maintain active debug info loader operations * btf_encoder: detect BTF encoding errors and exit * libbpf: Update to latest libbpf version * dwarf_loader: Conditionally define DW_AT_alignment * pahole: Implement --packed * man-pages: Fix 'coimbine' typo - remove libbpf-Fix-libbpf-hashmap-on-I-LP32-architectures.patch (upstream) OBS-URL: https://build.opensuse.org/package/show/devel:tools/dwarves?expand=0&rev=49
This commit is contained in:
parent
bb7c74430e
commit
a39fba660c
@ -1,7 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iHUEABYIAB0WIQR2GiIUctdOfX2qHhGyPKLppCJ+JwUCX3eWuAAKCRCyPKLppCJ+
|
||||
J55QAQDLwpxXtKxPlDDj3rYt80cZUZpC61b++LYBLmf3n/jFIwD/ec6iNeLGJkAR
|
||||
QvmKuS7pvduzR8epg0ORx/Ahoze+qg4=
|
||||
=CWxS
|
||||
-----END PGP SIGNATURE-----
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:95aaec4c1d51816f6b2ce17fb80ddc95d48578e6bbdeafead3ecaf33a323d2c9
|
||||
size 324912
|
3
dwarves-1.18_15g040fd7f.tar.xz
Normal file
3
dwarves-1.18_15g040fd7f.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e45312179712af2cec2bef0e6d52eec2d7312b8ae43dda02a08b690e81cc90a4
|
||||
size 682236
|
@ -1,3 +1,24 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 27 13:00:23 UTC 2020 - Dirk Mueller <dmueller@suse.com>
|
||||
|
||||
- update to 1.18_15g040fd7f (bsc#1177921):
|
||||
* btf_encoder: Support cross-compiled ELF binaries with different endianness
|
||||
* strings: use BTF's string APIs for strings management
|
||||
* strings: Rename strings.h to avoid clashing with /usr/include/strings.h
|
||||
* dwarf_loader: increase the size of lookup hash map
|
||||
* btf_encoder: revamp how per-CPU variables are encoded
|
||||
* btf_encoder: Discard CUs after BTF encoding
|
||||
* btf_encoder: Fix emitting __ARRAY_SIZE_TYPE__ as index range type
|
||||
* btf_encoder: Use libbpf APIs to encode BTF type info
|
||||
* btf_loader: Use libbpf to load BTF
|
||||
* dwarves: Expose and maintain active debug info loader operations
|
||||
* btf_encoder: detect BTF encoding errors and exit
|
||||
* libbpf: Update to latest libbpf version
|
||||
* dwarf_loader: Conditionally define DW_AT_alignment
|
||||
* pahole: Implement --packed
|
||||
* man-pages: Fix 'coimbine' typo
|
||||
- remove libbpf-Fix-libbpf-hashmap-on-I-LP32-architectures.patch (upstream)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 2 22:00:47 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
|
10
dwarves.spec
10
dwarves.spec
@ -17,18 +17,16 @@
|
||||
|
||||
|
||||
Name: dwarves
|
||||
Version: 1.18
|
||||
Version: 1.18_15g040fd7f
|
||||
Release: 0
|
||||
Summary: DWARF utilities
|
||||
License: GPL-2.0-only
|
||||
Group: Development/Tools/Debuggers
|
||||
URL: http://acmel.wordpress.com/
|
||||
#Git-Clone: git://git.kernel.org/pub/scm/devel/pahole/pahole
|
||||
#Git-Web: http://git.kernel.org/cgit/devel/pahole/pahole.git
|
||||
Source: https://fedorapeople.org/~acme/dwarves/dwarves-%version.tar.xz
|
||||
Source2: https://fedorapeople.org/~acme/dwarves/dwarves-%version.tar.sign
|
||||
# Source: https://fedorapeople.org/~acme/dwarves/dwarves-%version.tar.xz
|
||||
Source: dwarves-%version.tar.xz
|
||||
# Source2: https://fedorapeople.org/~acme/dwarves/dwarves-%version.tar.sign
|
||||
Source9: baselibs.conf
|
||||
Patch1: libbpf-Fix-libbpf-hashmap-on-I-LP32-architectures.patch
|
||||
BuildRequires: cmake
|
||||
BuildRequires: libdw-devel >= 0.170
|
||||
%if 0%{?suse_version} < 1550
|
||||
|
@ -1,45 +0,0 @@
|
||||
From: Jakub Bogusz <qboosh@pld-linux.org>
|
||||
Date: Thu, 9 Jul 2020 15:57:23 -0700
|
||||
Subject: libbpf: Fix libbpf hashmap on (I)LP32 architectures
|
||||
Git-commit: b2f9f1535bb93ee5fa2ea30ac1c26fa0d676154c
|
||||
Patch-mainline: 5.8-rc5
|
||||
References: x86_32 crashes fix
|
||||
|
||||
On ILP32, 64-bit result was shifted by value calculated for 32-bit long type
|
||||
and returned value was much outside hashmap capacity.
|
||||
As advised by Andrii Nakryiko, this patch uses different hashing variant for
|
||||
architectures with size_t shorter than long long.
|
||||
|
||||
Fixes: e3b924224028 ("libbpf: add resizable non-thread safe internal hashmap")
|
||||
Signed-off-by: Jakub Bogusz <qboosh@pld-linux.org>
|
||||
Signed-off-by: Andrii Nakryiko <andriin@fb.com>
|
||||
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
|
||||
Link: https://lore.kernel.org/bpf/20200709225723.1069937-1-andriin@fb.com
|
||||
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
|
||||
---
|
||||
lib/bpf/src/hashmap.h | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/lib/bpf/src/hashmap.h
|
||||
+++ b/lib/bpf/src/hashmap.h
|
||||
@@ -16,11 +16,19 @@
|
||||
#include <bits/reg.h>
|
||||
#endif
|
||||
#include "libbpf_internal.h"
|
||||
+#include <limits.h>
|
||||
|
||||
static inline size_t hash_bits(size_t h, int bits)
|
||||
{
|
||||
/* shuffle bits and return requested number of upper bits */
|
||||
- return (h * 11400714819323198485llu) >> (__WORDSIZE - bits);
|
||||
+#if (__SIZEOF_SIZE_T__ == __SIZEOF_LONG_LONG__)
|
||||
+ /* LP64 case */
|
||||
+ return (h * 11400714819323198485llu) >> (__SIZEOF_LONG_LONG__ * 8 - bits);
|
||||
+#elif (__SIZEOF_SIZE_T__ <= __SIZEOF_LONG__)
|
||||
+ return (h * 2654435769lu) >> (__SIZEOF_LONG__ * 8 - bits);
|
||||
+#else
|
||||
+# error "Unsupported size_t size"
|
||||
+#endif
|
||||
}
|
||||
|
||||
typedef size_t (*hashmap_hash_fn)(const void *key, void *ctx);
|
Loading…
Reference in New Issue
Block a user