[U-Boot,v4,11/16] efi: Add a comment about duplicated ELF constants

Message ID 20180516154233.21457-12-sjg@chromium.org
State New
Delegated to: Alexander Graf
Headers show
Series
  • efi: Enable basic sandbox support for EFI loader
Related show

Commit Message

Simon Glass May 16, 2018, 3:42 p.m.
These constants are defined in arch-specific code but redefined here. Add
a TODO to clean this up.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v4: None
Changes in v3: None
Changes in v2: None

 lib/efi_loader/efi_runtime.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Heinrich Schuchardt May 16, 2018, 4:47 p.m. | #1
On 05/16/2018 05:42 PM, Simon Glass wrote:
> These constants are defined in arch-specific code but redefined here. Add
> a TODO to clean this up.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
> Changes in v4: None
> Changes in v3: None
> Changes in v2: None
> 
>  lib/efi_loader/efi_runtime.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
> index ac02f64d967..e94b94389d8 100644
> --- a/lib/efi_loader/efi_runtime.c
> +++ b/lib/efi_loader/efi_runtime.c
> @@ -36,6 +36,10 @@ static efi_status_t __efi_runtime EFIAPI efi_invalid_parameter(void);
>  #define EFI_CACHELINE_SIZE 128
>  #endif
>  
> +/*
> + * TODO(sjg@chromium.org): These defines and structs should come from the elf.

%s/elf\./elf/

> + * header for each arch (or a generic header) rather than being repeated here.
> + */
>  #if defined(CONFIG_ARM64)
>  #define R_RELATIVE	1027
>  #define R_MASK		0xffffffffULL

I would prefer if we would simply use glibc elf.h. But this will also
involve some rewriting. The value above for example is part of macro
ELF64_R_TYPE(i) in glibc elf.h.

Except for the typo.

Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>

>

Patch

diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
index ac02f64d967..e94b94389d8 100644
--- a/lib/efi_loader/efi_runtime.c
+++ b/lib/efi_loader/efi_runtime.c
@@ -36,6 +36,10 @@  static efi_status_t __efi_runtime EFIAPI efi_invalid_parameter(void);
 #define EFI_CACHELINE_SIZE 128
 #endif
 
+/*
+ * TODO(sjg@chromium.org): These defines and structs should come from the elf.
+ * header for each arch (or a generic header) rather than being repeated here.
+ */
 #if defined(CONFIG_ARM64)
 #define R_RELATIVE	1027
 #define R_MASK		0xffffffffULL