[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/2] xen: update CONFIG_DEBUG_INFO help text


  • To: Juergen Gross <jgross@xxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Tue, 7 Mar 2023 16:14:01 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=bdbkMmyiMnsYMWhRLQ7ZOfmRll1iHGhzpzksAo7bTJo=; b=IKGD617/WrzqJ3gkRcVzqov/8r7xycwWNcBN0WgN+8mZzmiIb+B+MuNAA+sfNffLko63jXuBIwxhI8JFAuK472U87WBSd7B6QoHCQT5zpdYkkFiYc9zCPTDYPXUPI6A96QJ5vT120Ub3BonTF8xt5CXiT/E3NUqxFA5WKvxbsibM0smKO2gDGOKI0TTEnaRIMZm13G9VDp27VUS4JMPgjvWPIVuYkFqxdGKI6L/VSY4T88CyVE0WdzwceV6pu4qJJGO79N/+l303UFROrLCfibAox/KO5vZg8ViR9WzpyR7iw84ZMYl7b5D/Fm1C/Th/ocoqFZtnFthOjtr9jlmBWQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K9MBwRPBVomUj++g0CXbRqUzFKAmHxIQIDltpl9uxIF3A6ZGdP5CrCbfK1mLd+25pYhKtTVgmskmNmPlVNLW9bMhESx7Nzak3IX9ivguZb1kFYuI63sFnom9Tj0sl9HGThHjbhuLLXA0q2punLXMah9z+p5VDO5gZ8draNLdxJUkdr5//3t3ef+Bco0P9orx4cIuNKXDfIuqzIkBaDIVRYZF7wsmu6PhfhkJrUb3LOcwezgv6cCRX+yem9MExEDy49ybVfU0YOqdssE9LiRWf6zBHZ9xvSIMTVDiVGjZm+aOEHlkXRFSuq5sJSebl59uoFFvPWExb5pOPC85t9plmQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Tue, 07 Mar 2023 15:14:14 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 07.03.2023 16:02, Juergen Gross wrote:
> On 07.03.23 15:34, Jan Beulich wrote:
>> On 07.03.2023 15:23, Juergen Gross wrote:
>>> On 07.03.23 15:18, Jan Beulich wrote:
>>>> On 07.03.2023 15:04, Juergen Gross wrote:
>>>>> On 07.03.23 11:41, Jan Beulich wrote:
>>>>>> On 07.03.2023 07:32, Juergen Gross wrote:
>>>>>>> --- a/xen/Kconfig.debug
>>>>>>> +++ b/xen/Kconfig.debug
>>>>>>> @@ -15,8 +15,11 @@ config DEBUG_INFO
>>>>>>>         bool "Compile Xen with debug info"
>>>>>>>         default DEBUG
>>>>>>>         ---help---
>>>>>>> -         If you say Y here the resulting Xen will include debugging 
>>>>>>> info
>>>>>>> -         resulting in a larger binary image.
>>>>>>> +         Say Y here if you want to build Xen with debug information. 
>>>>>>> This
>>>>>>> +         information is needed e.g. for doing crash dump analysis of 
>>>>>>> the
>>>>>>> +         hypervisor via the "crash" tool.
>>>>>>> +         Saying Y will increase the size of xen-syms and the built EFI
>>>>>>> +         binary.
>>>>>>
>>>>>> Largely fine with me, just one question: Why do you mention xen-syms by
>>>>>> name, but then verbally describe xen.efi? And since, unlike for xen-syms,
>>>>>
>>>>> For xen-syms I couldn't find an easily understandable wording. I'd be fine
>>>>> with just saying "xen.efi".
>>>>>
>>>>>> this affects the installed binary actually used for booting (which may
>>>>>> be placed on a space constrained partition), it may be prudent to
>>>>>> mention INSTALL_EFI_STRIP here (as a way to reduce the binary size of
>>>>>> what ends up on the EFI partition, even if that wouldn't affect the
>>>>>> "normal" way of putting the binary on the EFI partition - people would
>>>>>> still need to take care of that in their distros).
>>>>>
>>>>> What about adding a related Kconfig option instead?
>>>>
>>>> How would a Kconfig option possibly affect this? You want debug info
>>>> in the xen.efi in its standard install location (outside of the EFI
>>>> partition); or else if you don't want it there why would you want it
>>>> in xen-syms? It is the step of populating the EFI partition from the
>>>> standard install location where some equivalent of INSTALL_EFI_STRIP
>>>> would come into play. That step is done outside of Xen's build
>>>> system and hence outside of any Kconfig control.
>>>
>>> We have 2 binaries for the non-EFI hypervisor (xen-syms and xen[.gz]).
>>> Why can't we have the same for EFI? E.g. xen-syms.efi and xen.efi.
>>> The former would have the debug-info, the latter could be installed
>>> into the EFI partition.
>>
>> I view the two-binaries model of the non-EFI case as merely an
>> implementation detail;
> 
> The ability to do crash dump analysis is more than an implementation
> detail IMHO. It is a feature and as such the availability of xen-syms
> should be seen as an interface which functionality should be kept.

That you're looking the opposite way at things: The oddity is that we
can't use xen-syms directly for booting (which is also why it has this
specific name; otherwise "xen" would be what the linker produces).

>> it just so happens that there's little point
>> in mkelf32 retaining debug info. I therefore don't view it as very
>> reasonable to artificially introduce yet another binary.
> 
> In case there is no other way to enable hypervisor crash dump analysis
> I don't see this as an unreasonable approach.
> 
> It should be verified that this approach is really enabling the crash
> dump analysis of a crash dump from a xen.efi booted system, of course.

Right. First question would be whether they manage to consume Dwarf
debug info from a PE/COFF executable. Possibly the way to go is to
separate Dwarf data out of xen.efi into an ELF "container"; I have no
idea whether objcopy could be used for something like that.

Jan



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.