[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 10/16] efi: create efi_enabled()
On Wed, May 25, 2016 at 01:20:23AM -0600, Jan Beulich wrote: > >>> On 15.04.16 at 14:33, <daniel.kiper@xxxxxxxxxx> wrote: > > --- a/xen/arch/x86/efi/stub.c > > +++ b/xen/arch/x86/efi/stub.c > > @@ -4,11 +4,8 @@ > > #include <xen/lib.h> > > #include <asm/page.h> > > > > -#ifndef efi_enabled > > -const bool_t efi_enabled = 0; > > -#endif > > - > > struct efi __read_mostly efi = { > > + .flags = 0, /* Initialized later. */ > > This is pointless to add - the field will get zero-initialized anyway. Sure thing. However, I think that we should be clear here that there is no default value for .flags (well, it is 0). Though if you wish I can remove that. > > --- a/xen/common/efi/boot.c > > +++ b/xen/common/efi/boot.c > > @@ -934,6 +934,10 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE > > *SystemTable) > > char *option_str; > > bool_t use_cfg_file; > > > > +#ifndef CONFIG_ARM /* Disabled until runtime services implemented. */ > > + set_bit(EFI_PLATFORM, &efi.flags); > > +#endif > > Surely this can be __set_bit()? It's also hard to see what setting this OK. > flag has got to do with runtime services. But more on this below. Well, comment is not the best one here... I will fix it. > > @@ -42,11 +38,12 @@ UINT64 __read_mostly efi_boot_remain_var_store_size; > > UINT64 __read_mostly efi_boot_max_var_size; > > > > struct efi __read_mostly efi = { > > - .acpi = EFI_INVALID_TABLE_ADDR, > > - .acpi20 = EFI_INVALID_TABLE_ADDR, > > - .mps = EFI_INVALID_TABLE_ADDR, > > - .smbios = EFI_INVALID_TABLE_ADDR, > > - .smbios3 = EFI_INVALID_TABLE_ADDR, > > + .flags = 0, /* Initialized later. */ > > + .acpi = EFI_INVALID_TABLE_ADDR, > > + .acpi20 = EFI_INVALID_TABLE_ADDR, > > + .mps = EFI_INVALID_TABLE_ADDR, > > + .smbios = EFI_INVALID_TABLE_ADDR, > > + .smbios3 = EFI_INVALID_TABLE_ADDR > > }; > > This, again, is an unnecessary hunk. And in no case should you drop Ditto. > the trailing comma - that's there for a reason. What is the reason for trailing comma? > > --- a/xen/include/xen/efi.h > > +++ b/xen/include/xen/efi.h > > @@ -2,15 +2,17 @@ > > #define __XEN_EFI_H__ > > > > #ifndef __ASSEMBLY__ > > +#include <xen/bitops.h> > > #include <xen/types.h> > > #endif > > > > -extern const bool_t efi_enabled; > > - > > #define EFI_INVALID_TABLE_ADDR (~0UL) > > > > +#define EFI_PLATFORM 0 > > So what does "platform" mean? Did you consider using the more fine It means "EFI platform". It differentiates from "legacy BIOS platform". > grained set of flags Linux uses nowadays? That would also eliminate I wish to use just basic idea. However, I am not going to copy all stuff from Linux. We do not need that. > the odd connection to runtime services mentioned earlier. That is good point. I will think how to solve that in good way. > And please add a comment making clear that these values are bit > positions to be used in the flags field below. I might also help to > move this right next to the structure field. OK. Daniel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |