On 1 December 2015 at 01:24, Vladimir Olovyannikov <volov...@broadcom.com> wrote: > Thank you Andrew, Ard. > > The problem was my wrong interpretation of the offset in DS-5 for the > ShellPkg, > and therefore wrong entry point arithmetic. >
OK, thanks for clearing that up. Regards, Ard. >> -----Original Message----- >> From: af...@apple.com [mailto:af...@apple.com] >> Sent: Monday, November 30, 2015 10:02 AM >> To: Vladimir Olovyannikov >> Cc: edk2-devel@lists.01.org >> Subject: Re: [edk2] Strange behavior of the DS-5 debugger on AARCH64 with >> step-by-step debugging in uefi >> >> >> > On Nov 23, 2015, at 11:31 PM, Ard Biesheuvel <ard.biesheu...@linaro.org> >> wrote: >> > >> > On 24 November 2015 at 00:38, Vladimir Olovyannikov >> > <volov...@broadcom.com> wrote: >> >> >> >> >> >>> -----Original Message----- >> >>> From: Ard Biesheuvel [mailto:ard.biesheu...@linaro.org] >> >>> Sent: Tuesday, November 10, 2015 10:04 AM >> >>> To: Vladimir Olovyannikov >> >>> Cc: Cohen, Eugene; edk2-devel@lists.01.org >> >>> Subject: Re: [edk2] Strange behavior of the DS-5 debugger on AARCH64 >> with >> >>> step-by-step debugging in uefi >> >>> >> >>> On 10 November 2015 at 18:41, Vladimir Olovyannikov >> >>> <volov...@broadcom.com> wrote: >> >>>> Ard, >> >>>> Many thanks for your help. It works. >> >>>> >> >>> >> >>> Great! Thanks for reporting back. >> >>> >> >>> >> >>>> -----Original Message----- >> >>>> From: Ard Biesheuvel [mailto:ard.biesheu...@linaro.org] >> >>>> Sent: Monday, November 09, 2015 10:31 PM >> >>>> To: Vladimir Olovyannikov >> >>>> Cc: Cohen, Eugene; edk2-devel@lists.01.org >> >>>> Subject: Re: [edk2] Strange behavior of the DS-5 debugger on AARCH64 >> >>> with step-by-step debugging in uefi >> >>>> >> >>>> On 9 November 2015 at 19:01, Vladimir Olovyannikov >> >>>> <volov...@broadcom.com> wrote: >> >>>>> -----Original Message----- >> >>>>> From: Ard Biesheuvel [mailto:ard.biesheu...@linaro.org] >> >>>>> Sent: Sunday, November 08, 2015 10:52 PM >> >>>>> To: Vladimir Olovyannikov >> >>>>> Cc: Cohen, Eugene; edk2-devel@lists.01.org >> >>>>> Subject: Re: [edk2] Strange behavior of the DS-5 debugger on >> AARCH64 >> >>> with step-by-step debugging in uefi >> >>>>> >> >>>>> On 6 November 2015 at 21:32, Vladimir Olovyannikov >> >>>>> <volov...@broadcom.com>> wrote: >> >>>>>>> Hello Ard, Eugene, >> >>>>>>> Thank you for explanation. >> >>>>>>> >> >>>>>>> Ard, I tried the patch, but it cannot be applied to the latest >> >>>>>>> (pulled a >> >>> minute ago, git-svn-id: >> >>> https://svn.code.sf.net/p/edk2/code/trunk/edk2@18732 6f19259b- >> 4bc3- >> >>> 4df7-8a09-765794883524) >> >>>>>>> tree: all 3 hunks failed. Which commit should I be based on to apply >> the >> >>> patch? >> >>>>>>> >> >>>>>>> Anyway I found the lines manually and changed them. However, >> when >> >>> I try to >> >>>>>>> >> >>>>>>> source /uefi/ArmPlatformPkg/Scripts/Ds5/cmd_load_symbols.py -f >> >>> (0x85000000,0x00280000) -m (0x80000000,0x40000000) -a >> >>>>>>> I am getting >> >>>>>>> >> >>>>>>> ERROR(?): ValueError: need more than 1 value to unpack >> >>>>>>> File " /uefi/ArmPlatformPkg/Scripts/Ds5/cmd_load_symbols.py", >> line >> >>> 94, in <module>> >> >>>>>>> armplatform_debugger.load_all_symbols() >> >>>>>>> ERROR(CMD656): >> >>>>>>> # in >> /uefi/BroadcomPlatformPkg/NS2Pkg/Scripts/armpkg_syms.ds:2 >> >>> while executing: source >> >>> /uefi/ArmPlatformPkg/Scripts/Ds5/cmd_load_symbols.py -f >> >>> (0x85000000,0x00280000) -m (0x80000000,0x40000000) -a >> >>>>>>> ! The script >> /uefi/ArmPlatformPkg/Scripts/Ds5/cmd_load_symbols.py >> >>> failed to complete due to an error during execution of the script >> >>>>>>> >> >> [...] >> >> Ard, I got a pretty much the same issue when I tried to do some >> debugging in the ShellPkg. >> >> Except Shell I can perfectly debug everything. >> >> >> >> 1. source / uefi/ArmPlatformPkg/Scripts/Ds5/cmd_load_symbols.py -f >> (0x85000000,0x00280000) -m (0x80000000,0x40000000) -a >> >> loads symbols fine, but does not recognize any module matching the >> current PC if stopped in the shell. >> >> 2. Loading symbols with "add-symbol-file >> /uefi/Build/NS2Pkg/DEBUG_GCC49/AARCH64/ShellPkg/Application/Shell/Sh >> ell/DEBUG/Shell.dll 0xB6926000" >> >> "recognizes" modules (wrong ones though) but the source code does >> not match disassembly. >> >> >> >> So with Shell debug using DS-5 the code does not match the source. >> >> Is there a special linker setting I am missing or a technique? >> >> I am using the latest UEFI code from >> >> https://github.com/tianocore/edk2.git >> >> >> > >> > I am sorry, but since I don't have access to DS-5, I am not sure how >> > to debug this. >> > >> > Is there any way for you to figure how much the offset is between the >> > current and the correct location? I.e., by looking at the ELF asm dump >> > and the instructions around the PC? Something in the order of 0x260 >> > perhaps? >> > >> >> The map file in the build output directory is useful for tracking down these >> kind of issues. >> >> Issues like this usually relate to the fact that PE/COFF images load the >> PE/COFF header into memory when the code is loaded, while ELF (and Mach- >> O) do not do this. This means you have to shift the link address from 0 to >> the >> size of the PE/COFF header (0x260 is one possible size of the PE/COFF >> header). Basically it is part of the ELF to PE/COFF conversion magic. Maybe >> the ELF to PE/COFF conversion tool and the debugger script our out of sync? >> >> The other thing to look out for is TE (Tiano Executable) images. They have a >> stripped down version of a PE/COFF header to save space, and they are >> mostly used for PEI modules that run from FLASH. You have to add a negative >> adjustment to get the symbols loaded correctly. >> >> Thanks, >> >> Andrew Fish >> >> > -- >> > Ard. >> > _______________________________________________ >> > edk2-devel mailing list >> > edk2-devel@lists.01.org >> > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel