From: Mark Wielaard <mark@klomp.org>
To: "Sharma, Alok Kumar" <AlokKumar.Sharma@amd.com>,
"dwz@sourceware.org" <dwz@sourceware.org>
Cc: "George, Jini Susan" <JiniSusan.George@amd.com>,
"E, Nagajyothi" <Nagajyothi.E@amd.com>,
"Achra, Nitika" <Nitika.Achra@amd.com>
Subject: Re: [PATCH] DWZ aborted "write_types: Assertion `ref && ref->die_dup == NULL'"
Date: Fri, 05 Feb 2021 14:09:20 +0100 [thread overview]
Message-ID: <3b76b14ca5608a8cb0b31b34767d322aab31e7e8.camel@klomp.org> (raw)
In-Reply-To: <BYAPR12MB3223E443D810D86923E2051C9EB29@BYAPR12MB3223.namprd12.prod.outlook.com>
Hi Alok,
On Fri, 2021-02-05 at 06:09 +0000, Sharma, Alok Kumar via Dwz wrote:
> Would you please review the attached patch containing modification of
> assert condition.
> It was required to fix an abort which seem to be incorrect.
>
> There is an assert condition as "ref && ref->die_dup == NULL".
> As per definition of "struct dw_die", the structure fields starting
> from 'die_dup' are present only if 'die_toplevel' is 1. In line with
> this at multiple places in code, full/paritial memory is allocated for
> pointer of type dw_die.
> Ex. die = pool_alloc (dw_die, offsetof (struct dw_die, die_dup));
> Due to this, since memory is not allocated for field die_dup onwards,
> it may contain junk values. Macro 'die_safe_dupe' must be used in place
> of directly accessing 'die_dup' field whenever required.
>
> * dwz.c (write_types): Use 'die_safe_dup' to access field 'die_dup'.
I think you analysis and the code fix are correct. Thanks.
This was probably missed before because -fdebug-types-section isn't the
default, so we are not seeing many DWARF files with debug types.
Do you have an example where this triggers?
Thanks,
Mark
next prev parent reply other threads:[~2021-02-05 13:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-05 6:09 Sharma, Alok Kumar
2021-02-05 13:09 ` Mark Wielaard [this message]
2021-02-05 13:21 ` George, Jini Susan
2021-02-06 3:01 ` Mark Wielaard
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=3b76b14ca5608a8cb0b31b34767d322aab31e7e8.camel@klomp.org \
--to=mark@klomp.org \
--cc=AlokKumar.Sharma@amd.com \
--cc=JiniSusan.George@amd.com \
--cc=Nagajyothi.E@amd.com \
--cc=Nitika.Achra@amd.com \
--cc=dwz@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).