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

RE: [PATCH 20/37] xen: introduce CONFIG_EFI to stub API for non-EFI architecture


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Wei Chen <Wei.Chen@xxxxxxx>
  • Date: Thu, 27 Jan 2022 08:44:30 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; 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=kPJCqTHmwpltoHKb3HtG+WTzxhVcrMGlenQZU1EZIb4=; b=lRKDoY5K45ZMsH5NLwfKzH6du/ehrKSSrh8rH8JK+6jaM6YQSU4Kho5Pmn6AMS3dJhNAP0IL3TkhSxVLMCI9NkzZIQycwnE974MGZOGYhy1u9QXoRZxlCxNyD9L51kIAyt4X140sMmlM8wPn2GVw/F2PLGxixHSjsGJSdc6MKARtMrphsOHBInjjulMSSORQR5QH+vBkJSJu5J2QFoHR+8JbyWouhZ2lGO413mPCu8S2SFV1HTaUnPhoAsPN53wEqaTERR3YBdLycyixmC7KkMETy73cIrXY+oPx2sD9yS+1nDF7/IkIBOhB9PZF3paTAkOhx85hGHoszZ6kpMOr8A==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GJr+fxZGu1pFKekBR1239Kbjq7HtlqpvVyeq4g2Vf6yJVfJ6l/U752bsjc9Vn/Trq/vdeguZ3d57u/OK+SM5x3F9FBqyV+XnfAwkJd679XH3T0yGNKlSFcLlntXbNG3khHgPG/C/DRbuB84RCFXM1zkhTwzWxe3/hAK0cLJ/r2s+EpyyRSUOqMy0uEy1X87DxHaJOf2fudJNj3muq5xV2RSeUC8drr73LVLYql158WY3pg/GIy6H1CUWi08HlbR1/OR30Aa2xgF0IwCyRvaLvo03x/PVoPRWQ94j0s04GI1thpHOM8mK3nySTukoijqDIPrLhry2yNRbGMX42GqWdg==
  • Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Cc: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, "sstabellini@xxxxxxxxxx" <sstabellini@xxxxxxxxxx>, "julien@xxxxxxx" <julien@xxxxxxx>
  • Delivery-date: Thu, 27 Jan 2022 08:44:56 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true
  • Original-authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Thread-index: AQHXsHMtR+l18+MmpE6rl/RjSXTBgqx0TXyAgAME0EA=
  • Thread-topic: [PATCH 20/37] xen: introduce CONFIG_EFI to stub API for non-EFI architecture

Hi Jan,

> -----Original Message-----
> From: Jan Beulich <jbeulich@xxxxxxxx>
> Sent: 2022年1月25日 18:35
> To: Wei Chen <Wei.Chen@xxxxxxx>
> Cc: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>; xen-
> devel@xxxxxxxxxxxxxxxxxxxx; sstabellini@xxxxxxxxxx; julien@xxxxxxx
> Subject: Re: [PATCH 20/37] xen: introduce CONFIG_EFI to stub API for non-
> EFI architecture
> 
> On 23.09.2021 14:02, Wei Chen wrote:
> > --- a/xen/common/Kconfig
> > +++ b/xen/common/Kconfig
> > @@ -11,6 +11,16 @@ config COMPAT
> >  config CORE_PARKING
> >     bool
> >
> > +config EFI
> > +   bool
> > +   ---help---
> > +      This option provides support for runtime services provided
> > +      by UEFI firmware (such as non-volatile variables, realtime
> > +      clock, and platform reset). A UEFI stub is also provided to
> > +      allow the kernel to be booted as an EFI application. This
> > +      is only useful for kernels that may run on systems that have
> > +      UEFI firmware.
> 
> The way enabling of (full) EFI support works on x86, I consider it
> wrong / misleading to put the option in common code. At the very least
> the help text would need to call out the extra dependencies. Plus the
> help text of course then needs to be generic (i.e. applicable to both
> Arm and x86). That's notwithstanding the fact that without a prompt
> the help text won't ever be seen while configuring Xen.
> 
> Also (nit): Indentation. And please don't use ---help--- anymore in
> new code.
> 

I have used CONFIG_ARM_EFI to replace this common EFI config in my
latest version. This Kconfig option has been removed.
And thanks, I will not use --help-- anymore.

> > --- a/xen/include/xen/efi.h
> > +++ b/xen/include/xen/efi.h
> > @@ -25,6 +25,8 @@ extern struct efi efi;
> >
> >  #ifndef __ASSEMBLY__
> >
> > +#ifdef CONFIG_EFI
> > +
> >  union xenpf_efi_info;
> >  union compat_pf_efi_info;
> >
> > @@ -45,6 +47,8 @@ int efi_runtime_call(struct xenpf_efi_runtime_call *);
> >  int efi_compat_get_info(uint32_t idx, union compat_pf_efi_info *);
> >  int efi_compat_runtime_call(struct compat_pf_efi_runtime_call *);
> >
> > +#endif /* CONFIG_EFI*/
> 
> I can see that in the later patch, when introducing inline stubs,
> you would need conditionals here, but I don't think you need them
> right here (or you may want to introduce the stubs right away).
> 
> Also (nit): Missing blank in the comment.
> 
> Jan


 


Rackspace

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