From: "Rebecca Cran" <rebecca@bsdio.com>
To: gaoliming <gaoliming@byosoft.com.cn>,
devel@edk2.groups.io, 'Andrew Fish' <afish@apple.com>,
'Ray Ni' <ray.ni@intel.com>
Subject: Re: 回复: [edk2-devel] [PATCH] EmulatorPkg: Update lldbefi.py to work with current lldb which uses python3
Date: Sat, 12 Jun 2021 16:54:31 -0600 [thread overview]
Message-ID: <0945b06f-d73d-5e9d-becc-88ae13fa7a68@bsdio.com> (raw)
In-Reply-To: <009101d74b7f$24a4d130$6dee7390$@byosoft.com.cn>
Could someone commit this please?
--
Rebecca Cran
On 5/17/21 6:45 PM, gaoliming wrote:
> Rebecca:
> This change supports python2 & python3 both. So, I think this is a good fix. Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
>
> Thanks
> Liming
>> -----邮件原件-----
>> 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Rebecca Cran
>> 发送时间: 2021年5月17日 21:29
>> 收件人: devel@edk2.groups.io; Andrew Fish <afish@apple.com>; Ray Ni
>> <ray.ni@intel.com>
>> 主题: Re: [edk2-devel] [PATCH] EmulatorPkg: Update lldbefi.py to work with
>> current lldb which uses python3
>>
>> Could someone review this please?
>>
>> Thanks.
>> Rebecca Cran
>>
>> On 5/9/21 1:26 PM, Rebecca Cran wrote:
>>> The version of lldb shipping with macOS Big Sur is lldb-1205.0.27.3, and
>>> it uses python3. Update lldbefi.py to work with it, including removing
>>> the unused 'commands' import and fixing the print statements.
>>>
>>> Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
>>> ---
>>> EmulatorPkg/Unix/lldbefi.py | 17 ++++++++---------
>>> 1 file changed, 8 insertions(+), 9 deletions(-)
>>>
>>> diff --git a/EmulatorPkg/Unix/lldbefi.py b/EmulatorPkg/Unix/lldbefi.py
>>> index c3fb2675cb..952f8bf982 100755
>>> --- a/EmulatorPkg/Unix/lldbefi.py
>>> +++ b/EmulatorPkg/Unix/lldbefi.py
>>> @@ -10,7 +10,6 @@ import lldb
>>> import os
>>> import uuid
>>> import string
>>> -import commands
>>> import optparse
>>> import shlex
>>>
>>> @@ -389,7 +388,7 @@ def LoadEmulatorEfiSymbols(frame, bp_loc ,
>> internal_dict):
>>> FileName = frame.thread.process.ReadCStringFromMemory
>> (FileNamePtr, FileNameLen, Error)
>>> if not Error.Success():
>>> - print "!ReadCStringFromMemory() did not find a %d byte C string
>> at %x" % (FileNameLen, FileNamePtr)
>>> + print("!ReadCStringFromMemory() did not find a %d byte C string
>> at %x" % (FileNameLen, FileNamePtr))
>>> # make breakpoint command continue
>>> return False
>>>
>>> @@ -398,7 +397,7 @@ def LoadEmulatorEfiSymbols(frame, bp_loc ,
>> internal_dict):
>>> LoadAddress = frame.FindVariable
>> ("LoadAddress").GetValueAsUnsigned() - 0x240
>>> debugger.HandleCommand ("target modules add %s" %
>> FileName)
>>> - print "target modules load --slid 0x%x %s" % (LoadAddress,
>> FileName)
>>> + print("target modules load --slid 0x%x %s" % (LoadAddress,
>> FileName))
>>> debugger.HandleCommand ("target modules load --slide 0x%x
>> --file %s" % (LoadAddress, FileName))
>>> else:
>>> target = debugger.GetSelectedTarget()
>>> @@ -408,7 +407,7 @@ def LoadEmulatorEfiSymbols(frame, bp_loc ,
>> internal_dict):
>>> if FileName == ModuleName or FileName ==
>> SBModule.GetFileSpec().GetFilename():
>>> target.ClearModuleLoadAddress (SBModule)
>>> if not target.RemoveModule (SBModule):
>>> - print "!lldb.target.RemoveModule (%s) FAILED" %
>> SBModule
>>> + print("!lldb.target.RemoveModule (%s) FAILED" %
>> SBModule)
>>> # make breakpoint command continue
>>> return False
>>> @@ -490,15 +489,15 @@ def efi_guid_command(debugger, command,
>> result, dict):
>>> if len(args) >= 1:
>>> if GuidStr in guid_dict:
>>> - print "%s = %s" % (guid_dict[GuidStr], GuidStr)
>>> - print "%s = %s" % (guid_dict[GuidStr], GuidToCStructStr
>> (GuidStr))
>>> + print("%s = %s" % (guid_dict[GuidStr], GuidStr))
>>> + print("%s = %s" % (guid_dict[GuidStr], GuidToCStructStr
>> (GuidStr)))
>>> else:
>>> - print GuidStr
>>> + print(GuidStr)
>>> else:
>>> # dump entire dictionary
>>> width = max(len(v) for k,v in guid_dict.iteritems())
>>> for value in sorted(guid_dict, key=guid_dict.get):
>>> - print '%-*s %s %s' % (width, guid_dict[value], value,
>> GuidToCStructStr(value))
>>> + print('%-*s %s %s' % (width, guid_dict[value], value,
>> GuidToCStructStr(value)))
>>> return
>>>
>>> @@ -538,4 +537,4 @@ def __lldb_init_module (debugger, internal_dict):
>>> if Breakpoint.GetNumLocations() == 1:
>>> # Set the emulator breakpoints, if we are in the emulator
>>> debugger.HandleCommand("breakpoint command add -s
>> python -F lldbefi.LoadEmulatorEfiSymbols {id}".format(id=Breakpoint.GetID()))
>>> - print 'Type r to run emulator. SecLldbScriptBreak armed. EFI
>> modules should now get source level debugging in the emulator.'
>>> + print('Type r to run emulator. SecLldbScriptBreak armed. EFI
>> modules should now get source level debugging in the emulator.')
>>
>>
>>
>>
>>
>
>
prev parent reply other threads:[~2021-06-12 22:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <167D7C94C5E426A6.21893@groups.io>
2021-05-17 13:28 ` [edk2-devel] [PATCH] EmulatorPkg: Update lldbefi.py to work with current lldb which uses python3 Rebecca Cran
2021-05-18 0:45 ` 回复: " gaoliming
2021-06-12 22:54 ` Rebecca Cran [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=0945b06f-d73d-5e9d-becc-88ae13fa7a68@bsdio.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