public inbox for debugedit@sourceware.org
 help / color / mirror / Atom feed
From: "mark at klomp dot org" <sourceware-bugzilla@sourceware.org>
To: debugedit@sourceware.org
Subject: [Bug debugedit/31504] New: debugedit writes out ELF file even when nothing has been updated
Date: Sun, 17 Mar 2024 14:46:46 +0000	[thread overview]
Message-ID: <bug-31504-13298@http.sourceware.org/bugzilla/> (raw)

https://sourceware.org/bugzilla/show_bug.cgi?id=31504

            Bug ID: 31504
           Summary: debugedit writes out ELF file even when nothing has
                    been updated
           Product: debugedit
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: debugedit
          Assignee: unassigned at sourceware dot org
          Reporter: mark at klomp dot org
                CC: debugedit at sourceware dot org
  Target Milestone: ---

See also
https://gitlab.archlinux.org/archlinux/packaging/packages/pacman/-/issues/19#note_171380
(warning javascript)

Basically what happens is that these .net ELF files are not really ELF files,
but are ELF files with some extra data tagged on. Since libelf doesn't know
anything about this extra data in the file it will simply truncate it after all
known ELF data structures are written out. This is normally harmless because
elf_update ELF_C_WRITE doesn't really write out anything that hasn't changed.
But in this case it does.

What we could do at the end of main () is to check needs_update, and probably
all needs_xxx_update flags, and simply not call elf_update if all of them are
false.

Note that this doesn't help if anything does really (need) updates. This is
really not a valid ELF file. But it will help if someone only wants the
build-id or file list.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

             reply	other threads:[~2024-03-17 14:46 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-17 14:46 mark at klomp dot org [this message]
2024-03-18  8:20 ` [Bug debugedit/31504] " sam at gentoo dot org
2024-03-18 22:40 ` mark at klomp dot org
2024-03-21  0:05 ` allan at archlinux dot org
2024-03-21 11:46 ` mark at klomp dot org
2024-03-21 12:07 ` mark at klomp dot org
2024-03-21 21:23 ` allan at archlinux dot org
2024-03-22 12:29 ` mark at klomp dot org
2024-03-22 22:13 ` allan at archlinux dot org
2024-03-22 23:47 ` mark at klomp dot org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-31504-13298@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=debugedit@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).