[PATCH] x86: fix build race when generating temporary object files (take 2)

Jan Beulich posted 1 patch 3 years ago
Test gitlab-ci passed
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/c35ad629-0dea-688a-199d-895186aeffb2@suse.com
[PATCH] x86: fix build race when generating temporary object files (take 2)
Posted by Jan Beulich 3 years ago
The original commit wasn't quite sufficient: Emptying DEPS is helpful
only when nothing will get added to it subsequently. xen/Rules.mk will,
after including the local Makefile, amend DEPS by dependencies for
objects living in sub-directories though. For the purpose of suppressing
dependencies of the makefiles on the .*.d2 files (and thus to avoid
their re-generation) it is, however, not necessary at all to play with
DEPS. Instead we can override DEPS_INCLUDE (which generally is a late-
expansion variable).

Fixes: 761bb575ce97 ("x86: fix build race when generating temporary object files")
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -314,5 +314,5 @@ clean::
 # Suppress loading of DEPS files for internal, temporary target files.  This
 # then also suppresses re-generation of the respective .*.d2 files.
 ifeq ($(filter-out .xen%.o,$(notdir $(MAKECMDGOALS))),)
-DEPS:=
+DEPS_INCLUDE:=
 endif

Ping: [PATCH] x86: fix build race when generating temporary object files (take 2)
Posted by Jan Beulich 2 years, 11 months ago
On 26.04.2021 11:54, Jan Beulich wrote:
> The original commit wasn't quite sufficient: Emptying DEPS is helpful
> only when nothing will get added to it subsequently. xen/Rules.mk will,
> after including the local Makefile, amend DEPS by dependencies for
> objects living in sub-directories though. For the purpose of suppressing
> dependencies of the makefiles on the .*.d2 files (and thus to avoid
> their re-generation) it is, however, not necessary at all to play with
> DEPS. Instead we can override DEPS_INCLUDE (which generally is a late-
> expansion variable).
> 
> Fixes: 761bb575ce97 ("x86: fix build race when generating temporary object files")
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Ping?

Ian, I'm also including you here because iirc the .*.d2 thing was an
invention of yours, so you may have an opinion.

Jan

> --- a/xen/arch/x86/Makefile
> +++ b/xen/arch/x86/Makefile
> @@ -314,5 +314,5 @@ clean::
>  # Suppress loading of DEPS files for internal, temporary target files.  This
>  # then also suppresses re-generation of the respective .*.d2 files.
>  ifeq ($(filter-out .xen%.o,$(notdir $(MAKECMDGOALS))),)
> -DEPS:=
> +DEPS_INCLUDE:=
>  endif
> 


Ping²: [PATCH] x86: fix build race when generating temporary object files (take 2)
Posted by Jan Beulich 2 years, 11 months ago
On 26.04.2021 11:54, Jan Beulich wrote:
> The original commit wasn't quite sufficient: Emptying DEPS is helpful
> only when nothing will get added to it subsequently. xen/Rules.mk will,
> after including the local Makefile, amend DEPS by dependencies for
> objects living in sub-directories though. For the purpose of suppressing
> dependencies of the makefiles on the .*.d2 files (and thus to avoid
> their re-generation) it is, however, not necessary at all to play with
> DEPS. Instead we can override DEPS_INCLUDE (which generally is a late-
> expansion variable).
> 
> Fixes: 761bb575ce97 ("x86: fix build race when generating temporary object files")
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Ping (again)? I'll give it till Wednesday, and if I don't hear back,
I'll commit without any acks.

Ian, I'm also including you here because iirc the .*.d2 thing was an
invention of yours, so you may have an opinion.

Jan

> --- a/xen/arch/x86/Makefile
> +++ b/xen/arch/x86/Makefile
> @@ -314,5 +314,5 @@ clean::
>  # Suppress loading of DEPS files for internal, temporary target files.  This
>  # then also suppresses re-generation of the respective .*.d2 files.
>  ifeq ($(filter-out .xen%.o,$(notdir $(MAKECMDGOALS))),)
> -DEPS:=
> +DEPS_INCLUDE:=
>  endif
>