gt;
> Build state: failed test (failure)
> Revision: 1ccbd384375d4c84aecc6dc382d372f5979a1f0c
> Worker: fedora-ppc64le
> Build Reason: (unknown)
> Blamelist: Mark Wielaard
>
> [...]
>
> - 7: make check ( failure )
> Logs:
> - stdio:
> https://bu
Hi Paul,
On Tue, Sep 10, 2024 at 08:47:17AM -0400, Paul Smith wrote:
> On Tue, 2024-09-10 at 10:52 +0200, Mark Wielaard wrote:
> > On Mon, Sep 09, 2024 at 06:21:16PM -0400, Paul Smith wrote:
> > > On Mon, 2024-09-09 at 15:29 -0400, Paul Smith wrote:
> > > > I'm
Hi,
On Wed, 2024-08-28 at 23:43 +0200, Mark Wielaard wrote:
> commit bc0f7450c "elf*_xlatetom: do not check ELF_T_NHDR has integer
> number of records" fixed
> https://bugzilla.redhat.com/show_bug.cgi?id=835877
> But only for xlatetom. Do the same for xlatetof.
>
&g
Hi,
On Wed, 2024-08-28 at 23:58 +0200, Mark Wielaard wrote:
> Check that src and dest aren't NULL and that src->d_type < ELF_T_NUM.
>
> * elf32_xlatetof.c (elfw2(LIBELFBITS, xlatetof)): Check src, dest
> and src->d_type are valid.
> * elf32
form at https://sourceware.org/lists.html#ml-requestor
See you on the other side!
Mark
On Fri, 2016-12-30 at 23:43 +0100, Kurt Roeckx wrote:
> This list doesn't has a List-Id, can this be fixed?
List-id: header has been added by
overseers. Thanks for noticing.
Cheers,
Mark
Make sure that index.html is valid HTML 4.01 Transitional.
Add note about the elfutils targeting GNU/Linux first.
Add license section. Tweak CSS and formatting.
Signed-off-by: Mark Wielaard
---
default.css | 12 +--
gplv3-88x31.png | Bin 0 -> 2666 bytes
index.html |
Most of these pages are years out of date, but they contain useful
(historical) information. Add an index of old wiki pages and a link
from the main page. All pages are the text versions of the old wiki
page.
Signed-off-by: Mark Wielaard
---
DebugInfo| 21
that helps. And maybe inspires someone (you?) to
write up such a backend function and corresponding
dwfl frontend function.
Cheers,
Mark
And a coverage/README file with instructions how to regenerate
the pages after a new elfutils release.
Ideally we would automate this with some buildbot setup of course.
But for now having it done by hand is better than not having it.
Cheers,
Mark
On Fri, Jan 06, 2017 at 11:28:25AM +0100, Milian Wolff wrote:
> On Wednesday, January 4, 2017 2:42:23 PM CET Mark Wielaard wrote:
> > Longer answer. An address pointing into the PLT does
> > really point to an ELF symbol.
>
> You mean: does _not_
> Right?
Yes, I meant &
autoconf < 2.64 doesn't define PACKAGE_URL through AC_INIT.
Define it ourselves if needed.
Signed-off-by: Mark Wielaard
---
ChangeLog| 4
configure.ac | 6 ++
2 files changed, 10 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index bb2ec10..a587b43 100644
--- a/ChangeL
On Thu, 2017-01-12 at 11:45 +0100, Mark Wielaard wrote:
> autoconf < 2.64 doesn't define PACKAGE_URL through AC_INIT.
> Define it ourselves if needed.
Pushed to master.
On Tue, 2017-01-31 at 14:39 +0100, Milian Wolff wrote:
> should I be able to resolve kernel addresses to symbol names with elfutils
> libdwfl?
Yes. See also eu-addr2line -k -S which I believe does what you are
trying to do below.
> I did something like this:
>
> m_dwfl = dwfl_begin(m_callba
Some distros now add -D_FORTIFY_SOURCE=2 by default and we have missed
some issues in the past caught by it. Add it to CFLAGS if possible.
The configure check will make sure that it doesn't conflict with any
other CFLAGS already defined.
Signed-off-by: Mark Wielaard
---
ChangeLog
f git
send-email. It really shouldn't, so having the bounce message would be
good (we can then discuss on overseers@... to see what really happened).
Thanks,
Mark
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79448
Signed-off-by: Mark Wielaard
---
libasm/ChangeLog| 6 +-
libasm/asm_newsym.c | 6 --
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/libasm/ChangeLog b/libasm/ChangeLog
index fe06007..3f842f0 100644
--- a/libasm/Ch
m-tst9
> /tests/backtrace
> /tests/backtrace-child
> +/tests/backtrace-child-biarch
There are double spaces at some of the lines, causing the patch not to
apply as is.
Cheers,
Mark
out frame pointer unwinding.
>
> Signed-off-by: Ulf Hermann
Thanks. This makes sense to me. Applied.
Note the patch had the same issue as the previous one
(lines starting with a space had the first space doubled).
Cheers,
Mark
e new option is not yet used (I assume it will be
in the next patch that mysteriously never made it to the mailinglist)
and the ChangeLog isn't 100% according to spec. But I am in a good
mood :)
Thanks,
Mark
:)
https://www.gnu.org/prep/standards/html_node/Style-of-Change-Logs.html
soon.
Lets see if we can somehow get it past the spam filters...
Thanks,
Mark
Bounce from first attempt:
Return-Path:
Received: from tarox.wildebeest.org (herd.wildebeest.org [80.127.118.209])
(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
(No client certificate request
On Thu, 2017-02-09 at 21:13 +0100, Mark Wielaard wrote:
> Some distros now add -D_FORTIFY_SOURCE=2 by default and we have missed
> some issues in the past caught by it. Add it to CFLAGS if possible.
> The configure check will make sure that it doesn't conflict with any
> oth
parser.git/commit/3rdparty/elfutils?id=17ad3b57d613fede17a01b6cdd2d894850364f81
I'll ask overseers if something can be done about the sourceware list
being a little bit too strict on blocking these emails as spam.
Thanks,
Mark
On Tue, 2017-02-14 at 21:58 -0500, Mike Frysinger wrote:
> On 09 Feb 2017 21:13, Mark Wielaard wrote:
> > +# See if we can add -D_FORTIFY_SOURCE=2. Don't do it if it is already
> > +# (differently) defined or if it generates warnings/errors because we
> > +# don't u
ppc64 and ppc64le ELF files can also contain a power specific
.gnu.attributes section. Add support for those and recognize the new
GNU_Power_ABI_FP Single-precision hard float value.
Signed-off-by: Mark Wielaard
---
backends/ChangeLog | 6 ++
backends/ppc64_init.c
he extra
space.
Cheers,
Mark
ch is OK. The
correct spelling is indeed _SC_PAGESIZE and getpagesize () really is
just sysconf (_SC_PAGESIZE). Applied.
Thanks,
Mark
ogies, and please let me know what changes you did
intend.
Cheers,
Mark
* x86_64_unwind.c: New file
+ * Makefile.am (x86_64_SRCS): Add x86_64_unwind.c
+ * x86_64_init.c (x86_64_init): Hook x86_64_unwind
+
2016-11-02 Mark Wielaard
* i386_regs.c (i386_register_info): Add fallthrough comment.
diff --git a/backends/Makefile.am b/backends/Make
From: Ulf Hermann
If we don't find any debug information for a given frame, we usually
cannot unwind any further. However, the binary in question might have
been compiled with frame pointers, in which case we can look up the
well known frame pointer locations in the stack snapshot and use them
to
From: Ulf Hermann
If we don't find any debug information for a given frame, we usually
cannot unwind any further. However, the binary in question might have
been compiled with frame pointers, in which case we can look up the
well known frame pointer locations in the stack snapshot and use them
to
For those that actually want to read the standard it is here:
http://dwarfstd.org/doc/DWARF5.pdf
And there now is a public git repository, in case you need to figure out
the changes since the last public draft here:
http://git.dwarfstd.org/?p=dwarf-doc.git;a=summary
git clone http://git.dwarfstd.o
ase. But it might subtly break something
if someone forgets.
Cheers,
Mark
I
think we should look if we can just import the necessary gnulib modules
to get portability functions.
Cheers,
Mark
is fine.
But like said before argp is needed for the tools and the libdw
interface. If your glibc replacement doesn't provide argp the build
should pick up libargp and get the definitions and implementation from
there.
Cheers,
Mark
import modules from gnulib that would be my
preference. That way all we have to do is refresh the modules
with gnulib-tool --update around release time.
Cheers,
Mark
k that is
fine. It will only be an issue on non-GNU/Linux setups. But we should
indeed make clear during configure time when extra license requirements
would apply because gnulib code is being used/imported. Maybe we can
just have configure warn/error out "Your setup requires importing of
GPLv3+ gnulib code, please configure with --enable-gplv3-gnulib".
Or something like that.
Cheers,
Mark
code, nested functions and arrays of
variable lengths because those are really useful).
Cheers,
Mark
extern int dwfl_linux_proc_maps_report (Dwfl *dwfl, FILE *);
It does slightly less because it doesn't know the running process pid,
but might do enough for your use case. But I think just dropping
privileges to the uid of the process is easier.
Cheers,
Mark
> >
> > 109 init_dwarf_status = dwarf_status_error;
> >
> > 110 return false;
> >
> > 111 }
Note that if file_data != NULL then the result of dwarf_errmsg (-1)
is undefined. You should first check file_data == NULL before calling
dwarf_errmsg (-1).
Cheers,
Mark
We sanity check to make sure we don't index outside the chain array
by testing inner > max_nsyms. But inner is a zero-based index, while
max_nsyms is the maximum number. Change the check to inner >= max_nsyms.
https://sourceware.org/bugzilla/show_bug.cgi?id=21299
Signed-off-by: Ma
ELF notes can have a zero sized name. In which case there is no data at
all (so also no zero terminator). Make sure to use the empty string for
such notes if the code does not otherwise explicitly check n_namesz.
https://sourceware.org/bugzilla/show_bug.cgi?id=21300
Signed-off-by: Mark Wielaard
The maximum compression factor (http://www.zlib.net/zlib_tech.html) is
1032:1. Add a sanity check for that before trying to allocate lots of
memory and trying to decompress lots of bogus data.
https://sourceware.org/bugzilla/show_bug.cgi?id=21301
Signed-off-by: Mark Wielaard
---
libelf
On Wed, 2017-02-15 at 14:39 +0100, Mark Wielaard wrote:
> ppc64 and ppc64le ELF files can also contain a power specific
> .gnu.attributes section. Add support for those and recognize the new
> GNU_Power_ABI_FP Single-precision hard float value.
I pushed this to master.
It has been in t
On Sun, 2017-02-12 at 21:54 +0100, Mark Wielaard wrote:
> Make sure that if we have really many labels the tempsym doesn't get
> truncated because it is too small to hold the whole name.
I pushed this to master.
It has been in the fedora elfutils for some time now.
> This doesn
t case
the last_position was not updated correctly.
Includes a new testcase fillfile that fails before this patch by showing
fill instead of the expected data in some section data. It succeeds with
this patch.
https://sourceware.org/bugzilla/show_bug.cgi?id=21199
Signed-off-by: Mark Wielaard
-
at you
believe it should be we should examine if there is some other way to
do the right thing.
Cheers,
Mark
Before checking symbol index zero we should make sure the data size
is big enough.
https://sourceware.org/bugzilla/show_bug.cgi?id=21310
Signed-off-by: Mark Wielaard
---
src/ChangeLog | 4
src/elflint.c | 3 ++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/ChangeLog b
Calculate and use the expected entsize instead of relying on the one
given by the ELF file section header. Return early if there isn't enough
data in the section to check the full hash table.
https://sourceware.org/bugzilla/show_bug.cgi?id=21311
Signed-off-by: Mark Wielaard
---
src/Chan
Make sure we can at least read the shnum sections or phnum segments.
Limit the number we do check to those we can actually read.
https://sourceware.org/bugzilla/show_bug.cgi?id=21312
Signed-off-by: Mark Wielaard
---
src/ChangeLog | 4
src/elflint.c | 26 ++
2
https://sourceware.org/bugzilla/show_bug.cgi?id=21320
Signed-off-by: Mark Wielaard
---
src/ChangeLog | 4
src/elflint.c | 5 -
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/ChangeLog b/src/ChangeLog
index 0601198..f5378a9 100644
--- a/src/ChangeLog
+++ b/src
y is your use case? Maybe we can come up with a better
interface.
Thanks,
Mark
We were calling dwarf_attr_integrate () in the die in the loop instead of
on the result. Which would cause an infinite loop when die != result.
Add a testcase that explicitly checks this case.
https://sourceware.org/bugzilla/show_bug.cgi?id=21330
Signed-off-by: Mark Wielaard
---
libdw
On Wed, 2017-03-29 at 23:57 +0200, Milian Wolff wrote:
> On Mittwoch, 29. März 2017 21:48:08 CEST Mark Wielaard wrote:
> > Would it help your use case if there was a dwfl_init_state (Dwfl *dwfl,
> > int e_machine, unsigned char ei_class, unsigned char ei_data, ...)?
>
> W
upstream.
Yes, sorry. The patches looked fine. Then I thought I should try
adding similar support to another arch to double check. And then
I got distracted by something else. I'll get back to is asap and
make sure they get in before the next release end of the month.
Cheers,
Mark
simple architecture name like "x86" or "powerpc". But
what mechanism do you have to whether that is 32 or 64 bit, and big or
little endian?
Thanks,
Mark
Simply unconditionally uncompress any section to make sure indexes between
sections check out. Add some testcases with various compressed sections.
https://sourceware.org/bugzilla/show_bug.cgi?id=21332
Signed-off-by: Mark Wielaard
---
src/ChangeLog | 4
src/elflint.c
On Mon, 2017-04-03 at 23:15 +0200, Mark Wielaard wrote:
> On Mon, Apr 03, 2017 at 11:02:53AM +0200, Ulf Hermann wrote:
> > > Ping? Any progress on merging this functionality upstream?
> > > It can make quite a difference in unwinding.
> >
> > The patches have als
On Wed, 2017-04-05 at 15:04 +0200, Milian Wolff wrote:
> On Wednesday, April 5, 2017 2:46:34 PM CEST Mark Wielaard wrote:
> > On Thu, 2017-03-30 at 13:14 +0200, Milian Wolff wrote:
> > > > OK. How do you know the Elf architecture in that case? How and by what
> > >
ialized in
this function [-Werror=maybe-uninitialized] in that case.
https://sourceware.org/bugzilla/show_bug.cgi?id=21011
Signed-off-by: Mark Wielaard
---
libelf/ChangeLog | 4
libelf/elf_getarsym.c | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/libelf/ChangeLog b/l
l better than not unwinding at all, but I do understand that it's
> not really suitable for mainline elfutils.
Really I do think it would be nice to have. I certainly didn't mean it
isn't suitable for mainline. We just should be realistic about the
expectations. IMHO if at all possible we should get this upstream so you
don't have to carry extra patches.
Cheers,
Mark
d get the frame pointer based unwinder
upstream :)
Cheers,
Mark
ould this be:
# The binary is generated by compiling with eh_frame CFI, but with frame
# pointers.
#
# gcc -static -O2 -fno-omit-frame-pointer -fno-asynchronous-unwind-tables \
# -D_GNU_SOURCE -pthread -o tests/backtrace.x86_64.fp.exec -I. -Ilib \
# tests/backtrace-child.c
#
# The core is generated by calling the binary with --gencore
Thanks,
Mark
m all to the (rebased) mjw/fpunwind branch:
https://sourceware.org/git/?p=elfutils.git;a=shortlog;h=refs/heads/mjw/fp-unwind
Could you take a look and see if that looks good?
Thanks,
Mark
Add a simple i386_unwind.c frame pointer unwinder as fallback if DWARF/CFI
unwinding fails.
Signed-off-by: Mark Wielaard
---
backends/ChangeLog | 6 +++
backends/Makefile.am| 2 +-
backends/i386_init.c| 3 +-
backends/i386_unwind.c
(if end of callstack
marker is missing, which it unfortunately often is missing even if CFI
is available.).
Signed-off-by: Mark Wielaard
---
tests/ChangeLog | 6 ++
tests/backtrace-subr.sh | 12 +++-
tests/backtrace.c | 30 --
3 files changed, 17
* x86_64_unwind.c: New file
+ * Makefile.am (x86_64_SRCS): Add x86_64_unwind.c
+ * x86_64_init.c (x86_64_init): Hook x86_64_unwind
+
2017-02-15 Mark Wielaard
* ppc64_init.c (ppc64_init): Add check_object_attribute HOOK.
diff --git a/backends/Makefile.am b/backends/Make
).
This showed that the ppc32 backtrace test files were missing DWARF CFI
for the main executable. Regenerated them to include full CFI.
Signed-off-by: Mark Wielaard
---
tests/ChangeLog | 7 +++
tests/backtrace-subr.sh | 14 ++
tests
geLog
+++ b/tests/ChangeLog
@@ -1,3 +1,10 @@
+2017-02-13 Ulf Hermann
+
+ * Makefile.am: Add test for unwinding with frame pointers on aarch64
+ * backtrace.aarch64.fp.core.bz2: New file
+ * backtrace.aarch64.fp.exec.bz2: New file
+ * run-backtrace-fp-core-aarch64.sh: New file
+
20
On Tue, 2017-04-25 at 14:49 +0200, Mark Wielaard wrote:
> +bool
> +EBLHOOK(unwind) (Ebl *ebl __attribute__ ((unused)), Dwarf_Addr pc
> __attribute__ ((unused)),
> + ebl_tid_registers_t *setfunc, ebl_tid_registers_get_t
> *getfunc,
> + ebl
Thanks pushed to master.
But I removed the Change-Id since I don't know how it is helpful.
Cheers,
Mark
On Thu, Apr 20, 2017 at 03:37:04PM +0200, Ulf Hermann wrote:
> We only include them where we actually need them and only on linux.
Looks correct. Quickly tested on Fedora and RHEL x86_64.
But I believe the other arches are correct too.
Pushed to master.
Thanks,
Mark
On Thu, Apr 20, 2017 at 03:40:46PM +0200, Ulf Hermann wrote:
> Not all search.h declare it, and it is not very helpful anyway.
Well, it is less typing and it kept the lines under 80 chars.
But because there were other longer lines already I just kept it.
Pushed to master.
Thanks,
Mark
es" or "no" there.
Urgh. Good find. YESSTR and NOSTR were once meant for matching user
input. Using them for output was probably always wrong.
Pushed to master.
Thanks,
Mark
ouldn't also provide it as input if we
know that it is a signal or initial frame already. It just means that
unwinders would have to explicitly set it to false if cannot determine
it for the unwound frame (which is for all of them except the s390x
unwinder). It would really be just one line change in the call to and in
the unwinder functions. This isn't a public API, so we can change it to
be smarter.
Cheers,
Mark
On Fri, 2017-04-21 at 18:51 +0200, Ulf Hermann wrote:
> + * .gitignore: Add fillfile and peel_type tests.
Pushed to master.
Thanks,
Mark
On Thu, 2017-04-20 at 17:07 +0200, Ulf Hermann wrote:
> BYTE_ORDER and friends are customarily defined in endian.h.
Right. Which we do in all other places where BYTE_ORDER is used.
Pushed to master.
Thanks,
Mark
pected more issues.
Cheers,
Mark
So maybe the proper "fix" for that is to make our testcase a little less
strict and allow the occasional extra frame instead of trying to make
the frame pointer unwinder "extra smart".
Maybe something like the attached patch?
Cheers,
Mark
diff --git a/backends/aarch64_unwi
rame gets duplicated after a DWARF CFI frame?
I'll look if I can better understand why that is.
Cheers,
Mark
r this is a more natural way to express shnum.
Applied to master.
Thanks,
Mark
_release ()
returns NULL the callers expect errno to be set so they can use it
to return a failure code.
Cheers,
Mark
On Thu, Apr 20, 2017 at 04:33:28PM +0200, Ulf Hermann wrote:
> We cannot rely on it to be available from any of the other headers.
You are right. I never realized there was both string.h and strings.h.
Applied to master.
Thanks,
Mark
> Casting phnum to size_t is a good idea anyway as 16bit multiplication
> can easily overflow and we are not checking for this.
OK, that seems an ok enough reason.
Applied to master.
Thanks,
Mark
On Thu, Apr 20, 2017 at 04:54:26PM +0200, Ulf Hermann wrote:
> At least one test (dwfl-addr-sect) depends on the order of elf sections
> with equal addresses. This is not guaranteed by the code. Compare also
> by end address and name to tell entries apart.
O, interesting find. If the start address
ind won't report it. How did you find it?
Thanks,
Mark
On Thu, Apr 27, 2017 at 04:35:23PM +0200, Ulf Hermann wrote:
> The way it was before it didn't actually test if elf_update failed, but
> rather did something random. !!() is a boolean and boolean
> true can be represented as anything non-0, including negative numbers.
Urgh. Another good find.
Than
o into the next release. We could do the
next release a bit quicker to compensate for 0.169 being a month late
and do 0.170 after 2 months (end of June/start of July).
Cheers,
Mark
atters.
Applied to master.
Thanks,
Mark
On Thu, 2017-04-20 at 15:58 +0200, Ulf Hermann wrote:
> F_GETFD is both cheaper and easier to port, and otherwise has the same
> effect here.
At least for the specific case of checking for failure with errno ==
EBADF it is identical. Applied to master.
Thanks,
Mark
f and the
linux-kernel-modules.c which needs the ugly BAD_FTS check before
config.h (which your patch both handles). Maybe we can cleanup that last
one once we integrate gnulib (which I believe has a good/64-off_t fts.h
already).
Applied to master.
Thanks,
Mark
ased the mjw/fp-unwind branch to master.
All patches on that branch are now pushed so for 0.169 we should have
a frame pointer unwinder backtrace fallback for at least x86_64, i686
and aarch64.
Thanks for all your work and sorry this took a while to land.
Cheers,
Mark
les. The only operating system where this makes sense
> is linux as we cannot handle anything but linux kernel modules there.
> Therefore there is no point in retrieving the kernel version on any other
> OS.
Agreed. So committed as attached.
Thanks,
Mark
>From e88787f9cd2af5be00aa6f53
On Fri, Apr 28, 2017 at 12:35:26PM +0200, Ulf Hermann wrote:
> On 04/27/2017 09:41 PM, Mark Wielaard wrote:
> > On Thu, Apr 20, 2017 at 04:54:26PM +0200, Ulf Hermann wrote:
> >> At least one test (dwfl-addr-sect) depends on the order of elf sections
> >> with e
elf).
- Check native binary format
Yes, running self-test/checks on non-ELF binaries is not going to
work.
Cheers,
Mark
, aarch64.
translations: Update Polish translation.
* GIT SHORTLOG *
Luiz Angelo Daros de Luca (1):
Fix TEMP_FAILURE_RETRY definition when not defined.
Mark Wielaard (20):
Define PACKAGE_URL for older autoconf.
Add -D_FORTIFY_SOURCE=2 to CFLAGS if possible.
backends: Add support for
p already. But if it would be helpful
to have a user branch on sourceware.org then please follow the steps in
CONTRIBUTING on how to become a committer. Then even if we don't
integrate all your patches in master it will look more like an "official
fork" to support a Windows build.
Cheers,
Mark
o not have divergence if at all possible. So could you try
submitting to glibc upstream first? (libc-al...@sourceware.org)
They might say they expect your features.h to provide these macros.
But they might also just take the change as is. If not we'll figure
something out for elfutils.
Thanks,
Mark
f_formstring (dwarf_attr (dwarf_diecu (die, ...), DW_AT_comp_dir, ...));
If the name already started with a '/' then it is already a full path.
It might make the systemtap output more consistent if it did that. But
since the file names are also used to match against regular expressions
you might need a bit careful where you do or don't add the full path.
Cheers,
Mark
U and line_table to use.
But that is so inefficient that I don't want to do that by default.
Cheers,
Mark
601 - 700 of 3433 matches
Mail list logo