public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Sami Mujawar" <sami.mujawar@arm.com>
To: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: "devel@edk2.groups.io" <devel@edk2.groups.io>, nd <nd@arm.com>,
	Matteo Carlini <Matteo.Carlini@arm.com>,
	Laura Moretta <Laura.Moretta@arm.com>
Subject: Re: Debugging aarch64 edk2 built with gcc-8.x 64-bit arm compiler
Date: Thu, 12 Dec 2019 18:32:34 +0000	[thread overview]
Message-ID: <DB6PR0802MB2375B3FB9A6FB4483504010184550@DB6PR0802MB2375.eurprd08.prod.outlook.com> (raw)
In-Reply-To: <f176812dc4959a33873b980db2697c4c@mail.gmail.com>

Hi Vladimir,

Please find may response marked [SAMI]

Regards,

Sami Mujawar

-----Original Message-----
From: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com> 
Sent: 12 December 2019 05:51 PM
To: Sami Mujawar <Sami.Mujawar@arm.com>; Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: devel@edk2.groups.io; nd <nd@arm.com>
Subject: RE: Debugging aarch64 edk2 built with gcc-8.x 64-bit arm compiler

> -----Original Message-----
> From: Sami Mujawar <Sami.Mujawar@arm.com>
> Sent: Thursday, December 12, 2019 8:07 AM
> To: Ard Biesheuvel <ard.biesheuvel@linaro.org>; Vladimir Olovyannikov 
> <vladimir.olovyannikov@broadcom.com>
> Cc: edk2-devel-groups-io <devel@edk2.groups.io>; nd <nd@arm.com>
> Subject: RE: Debugging aarch64 edk2 built with gcc-8.x 64-bit arm 
> compiler
>
> Hi Vladimir,
>
> I have built the edk2 firmware using the following toolchains and find 
> that the symbols are loaded correctly using DS5.
>   - gcc-arm-8.3-2019.03-x86_64-aarch64-elf.tar.xz
>   - gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz
> The above toolchains are available at 
> https://developer.arm.com/tools-and-
> software/open-source-software/developer-tools/gnu-toolchain/gnu-
> a/downloads
>
> So, it looks like the problem you mention may have something to do 
> with the toolchain shipped with Yocto.
Hi Sami,
Thank you for reply. I tried with the same 8.x compilers and still have issues with symbols.
Building with gcc-6.3 - symbols and stacks are OK. Maybe, you have some docs on how you load symbols, and I do it wrong?


[SAMI] I am using WSL (Windows subsystem for Linux) for building the firmware and DS5 on a Windows host PC. 
I am assuming you are using DS5 on a Linux host PC. I will try to recreate this on a Linux PC.
[/SAMI]

Maybe you can point me to different DS5 python scripts?

[SAMI] I have used the DS5 'add-symbol-file' command to load the symbols. I copy the edk2 serial log output and run in the DS5 command window. 
e.g. I run the following command in DS5 command window to load the symbols:
	add-symbol-file c:\workspace\Build\ArmVExpress-FVP-AArch64\DEBUG_GCC5\AARCH64\ArmPkg\Drivers\ArmGic\ArmGicDxe\DEBUG\ArmGicDxe.dll 0xFAF05000
[/SAMI]

The present ones limit the path length to be 255 chars, and it provides wrong add-symbol-line (truncates
filenames) if the path length exceeds 255.

[SAMI] I have requested our DS5 team for more information/help with this issue.
Can you let me know the DS5 version that you are using, please?
[/SAMI]


Thank you,
Vladimir
>
> Regards,
>
> Sami Mujawar
>
> -----Original Message-----
> From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Sent: 11 December 2019 02:51 PM
> To: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>
> Cc: Sami Mujawar <Sami.Mujawar@arm.com>; edk2-devel-groups-io 
> <devel@edk2.groups.io>
> Subject: Re: Debugging aarch64 edk2 built with gcc-8.x 64-bit arm 
> compiler
>
> On Tue, 10 Dec 2019 at 18:25, Vladimir Olovyannikov 
> <vladimir.olovyannikov@broadcom.com> wrote:
> >
> > > -----Original Message-----
> > > From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> > > Sent: Tuesday, December 10, 2019 9:13 AM
> > > To: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>;
> Sami
> > > Mujawar <Sami.Mujawar@arm.com>
> > > Cc: edk2-devel-groups-io <devel@edk2.groups.io>
> > > Subject: Re: Debugging aarch64 edk2 built with gcc-8.x 64-bit arm 
> > > compiler
> > >
> > > On Sat, 7 Dec 2019 at 00:50, Vladimir Olovyannikov 
> > > <vladimir.olovyannikov@broadcom.com> wrote:
> > > >
> > > > Hi Ard,
> > > >
> > > >
> > > >
> > > > We are about to switch to the latest Yocto. It is shipped with
> > > > gcc-8.3
> > > aarch64-linux-gnu compiler.
> > > >
> > > > We use DS5 for bare metal debugging.
> > > >
> > > > When I build edk2 with gcc-7-x/gcc-8.x, DS5 complains on DWARF
> format.
> > > > I tried to explicitly set it to DWARF2, but still cannot even 
> > > > get the stack or local variables (even though DS5 does not 
> > > > complain), even for
> > > > edk2
> > > NOOPT build.
> > > >
> > > >
> > > >
> > > > Using gcc-6.3 from Linaro, I don’t see any issue with DS5 debugging.
> > > >
> > > > Am I missing any steps?
> > > >
> > > > Build is done with GCC5_AARCH64_PREFIX=aarch64-linux-gnu
> > > >
> > > >
> > > >
> > > > Another question: it seems that the DS5 scripts limit the path 
> > > > size with
> > > > 255
> > > chars. With a source built by Yocto, it can easily be more than that.
> > > >
> > > > Attempt to add symbols for such modules ends up with error 
> > > > message in
> > > the DS5 command window that it could not add those symbols.
> > > >
> > > > Is there a procedure to increase the path length limit?
> > > >
> > >
> > > I have never in my life used a DS-5 to debug EDK2 running on bare 
> > > metal, so unfortunately, I won't be able to help you.
> > >
> > How do you normally debug edk2 with DS5? Or, are you using a 
> > different mechanism?
> > Debugging with DS5 was/is very convenient.
> >
>
> I do my prototyping mainly in QEMU, using GDB for debug.
Ard, should I do similar for a real specific v8 board?

  reply	other threads:[~2019-12-12 18:32 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-06 23:50 Debugging aarch64 edk2 built with gcc-8.x 64-bit arm compiler Vladimir Olovyannikov
2019-12-10 17:13 ` Ard Biesheuvel
2019-12-10 17:25   ` Vladimir Olovyannikov
2019-12-11 14:51     ` Ard Biesheuvel
2019-12-12 16:07       ` Sami Mujawar
2019-12-12 17:51         ` Vladimir Olovyannikov
2019-12-12 18:32           ` Sami Mujawar [this message]
2019-12-12 18:56             ` Vladimir Olovyannikov

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-list 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=DB6PR0802MB2375B3FB9A6FB4483504010184550@DB6PR0802MB2375.eurprd08.prod.outlook.com \
    --to=devel@edk2.groups.io \
    /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