On 19.09.2022 12:28, Anthony PERARD wrote:
> We can't have a source file with the same name that exist in both the
> common code and in the arch specific code for efi/. This can lead to
> confusion in make and it can pick up the wrong source file. This issue
> lead to a failure to build a pv-shim for x86 out-of-tree, as this is
> one example of an x86 build using the efi/stub.c.
> 
> The issue is that in out-of-tree, make might find x86/efi/stub.c via
> VPATH, but as the target needs to be rebuilt due to FORCE, make
> actually avoid changing the source tree and rebuilt the target with
> VPATH ignored, so $@ lead to the build tree where "stub.c" doesn't
> exist yet so a link is made to "common/stub.c".
> 
> Rework the new common/stub.c file to have a different name than the
> already existing one, by renaming the existing one. We can hide the
> compat aliases that x86 uses behind CONFIG_COMPAT so a Arm build will
> not have them.
> 
> Also revert the change to the rule that creates symbolic links it's
> better to just recreate the link in cases where an existing file exist
> or the link goes to the wrong file.
> 
> Avoid using $(EFIOBJ-y) as an alias for $(clean-files), add
> "stub.c" directly to $(clean-files).
> 
> Also update .gitignore as this was also missing from the original
> patch.
> 
> Fixes: 7f96859b0d00 ("xen: reuse x86 EFI stub functions for Arm")
> Reported-by: Andrew Cooper <andrew.coop...@citrix.com>
> Signed-off-by: Anthony PERARD <anthony.per...@citrix.com>

Acked-by: Jan Beulich <jbeul...@suse.com>
with a remark and one more adjustment:

> ---
> 
> Notes:
>     v3:
>     - back to using common-stub.c

As said in person, I'm a little puzzled by this, as the v2 discussion
had no hint in that direction.

> --- a/.gitignore
> +++ b/.gitignore
> @@ -280,6 +280,7 @@ xen/arch/*/efi/ebmalloc.c
>  xen/arch/*/efi/efi.h
>  xen/arch/*/efi/pe.c
>  xen/arch/*/efi/runtime.c
> +xen/arch/*/efi/common-stub.c
>  xen/arch/*/include/asm/asm-offsets.h
>  xen/common/config_data.S
>  xen/common/config.gz

The new line wants inserting a few lines further up, to retain sorting.
Can perhaps be done while committing.

Jan

Reply via email to