[U-Boot] [PATCH v3 5/6] lib: crc32: mark function crc32() as __efi_runtime
Alexander Graf
agraf at suse.de
Sun Jul 8 21:25:15 UTC 2018
On 07.07.18 15:36, Heinrich Schuchardt wrote:
> The function crc32() is needed by the EFI subsystem at runtime. So it has
> to be linked into the runtime section together with all dependencies.
>
> Eliminate empty define ZEXPORT.
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> ---
> v3
> new patch
> ---
> lib/crc32.c | 17 ++++++++++-------
> 1 file changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/lib/crc32.c b/lib/crc32.c
> index 7f545fde4a..bcb140ba06 100644
> --- a/lib/crc32.c
> +++ b/lib/crc32.c
> @@ -12,6 +12,7 @@
> #include <arpa/inet.h>
> #else
> #include <common.h>
> +#include <efi_loader.h>
> #endif
> #include <compiler.h>
> #include <u-boot/crc.h>
> @@ -21,8 +22,11 @@
> #endif
> #include "u-boot/zlib.h"
>
> -#define local static
> -#define ZEXPORT /* empty */
> +#ifdef USE_HOSTCC
> +#define __efi_runtime
> +#define __efi_runtime_data
> +#endif
> +#define local static __efi_runtime_data
This pushes functions into the data section - which is probably not what
we want. Eventually we may want to have NX protection, so we need to
separate code and data as well as we can.
Alex
More information about the U-Boot
mailing list