Re: [PATCH] ARM: at91: move platform-specific asm-offset.h to arch/arm/mach-at91

From: Alexandre Belloni
Date: Fri Aug 23 2019 - 15:50:34 EST


On 23/08/2019 11:43:45+0900, Masahiro Yamada wrote:
> <generated/at91_pm_data-offsets.h> is only generated and included by
> arch/arm/mach-at91/, so it does not need to reside in the globally
> visible include/generated/.
>
> I renamed it to arch/arm/mach-at91/pm_data-offsets.h since the prefix
> 'at91_' is just redundant in mach-at91/.
>
> My main motivation of this change is to avoid the race condition for
> the parallel build (-j) when CONFIG_IKHEADERS is enabled.
>
> When it is enabled, all the headers under include/ are archived into
> kernel/kheaders_data.tar.xz and exposed in the sysfs.
>
> In the parallel build, we have no idea in which order files are built.
>
> - If at91_pm_data-offsets.h is built before kheaders_data.tar.xz,
> the header will be included in the archive. Probably nobody will
> use it, but it is harmless except that it will increase the archive
> size needlessly.
>
> - If kheaders_data.tar.xz is built before at91_pm_data-offsets.h,
> the header will not be included in the archive. However, in the next
> build, the archive will be re-generated to include the newly-found
> at91_pm_data-offsets.h. This is not nice from the build system point
> of view.
>
> - If at91_pm_data-offsets.h and kheaders_data.tar.xz are built at the
> same time, the corrupted header might be included in the archive,
> which does not look nice either.
>
> This commit fixes the race.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> ---
>
> arch/arm/mach-at91/.gitignore | 1 +
> arch/arm/mach-at91/Makefile | 5 +++--
> arch/arm/mach-at91/pm_suspend.S | 2 +-
> 3 files changed, 5 insertions(+), 3 deletions(-)
> create mode 100644 arch/arm/mach-at91/.gitignore
>
Applied, thanks.

--
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com