public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Andrew Fish" <afish@apple.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: "Liming Gao (Byosoft address)" <gaoliming@byosoft.com.cn>,
	edk2-devel-groups-io <devel@edk2.groups.io>,
	Daniele Crudo <crudo.daniele@gmail.com>
Subject: Re: OSX / XCODE5-specific issue with OVMF?...
Date: Thu, 15 Oct 2020 09:41:29 -0700	[thread overview]
Message-ID: <2DABFFC5-4D99-42D6-8D06-9D53A337E8A4@apple.com> (raw)
In-Reply-To: <82777afd-d08c-87ae-37dc-2562d2b9506c@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 2336 bytes --]

Laszlo,

The Logo issue is likely related to lack of support of HII Sections in PE/COFF for the XCODE toolchain. It is the same reason these commands[1] are not included in the OVMF build. I submitted some patches a while back to fix this, I need to follow as I’m not sure they got integrated. So the logo issue is not related. 

Is the system hung or just not working? If it is hung you can try and attach via lldb to see your location. If it is just not working then I think you will need to do the DEBUG prints that Laszlo mentioned. 

In general if you have XCODE specific issues it is often time related to clang being so aggressive about optimizing out undefined behavior. 

If you pass ` -gdb tcp::9000` to QEMU you can attach with lldb via:
lldb -o "settings set plugin.process.gdb-remote.target-definition-file x86_64_target_definition.py" -o "gdb-remote 9000"

You only need the plugin.process.gdb-remote.target-definition-file if you have an older lldb and older QEMU. Long story but lldb did not support the XML description of the target. If this works you will get registers and an unsymbolicated backtrace. 

[1] https://github.com/tianocore/edk2/blob/master/OvmfPkg/OvmfPkgX64.dsc#L898


!if $(TOOL_CHAIN_TAG) != "XCODE5"
  ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
    <PcdsFixedAtBuild>
      gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
  }
  ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
    <PcdsFixedAtBuild>
      gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
  }
  OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
    <PcdsFixedAtBuild>
      gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
  }
!endif

[2] You can find x86_64_target_definition.py here:  https://opensource.apple.com/source/lldb/lldb-310.2.36/examples/python/x86_64_target_definition.py.auto.html

Thanks,

Andrew Fish

> On Oct 15, 2020, at 9:06 AM, Laszlo Ersek <lersek@redhat.com> wrote:
> 
> Hi Andrew, Liming,
> 
> can you please take a look at
> <https://bugzilla.tianocore.org/show_bug.cgi?id=3006>? Daniele has a
> quite specific VM setup with OVMF, and it only causes an issue if the
> OVMF binary was built on OSX with XCODE5. I'm out of ideas.
> 
> Thanks,
> Laszlo
> 


[-- Attachment #2: Type: text/html, Size: 15596 bytes --]

      reply	other threads:[~2020-10-15 16:41 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-15 16:06 OSX / XCODE5-specific issue with OVMF? Laszlo Ersek
2020-10-15 16:41 ` Andrew Fish [this message]

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=2DABFFC5-4D99-42D6-8D06-9D53A337E8A4@apple.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