Message ID | 20190823025808.11875-1-yamada.masahiro@socionext.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ARM: omap2: move platform-specific asm-offset.h to arch/arm/mach-omap2 | expand |
* Masahiro Yamada <yamada.masahiro@socionext.com> [190822 19:59]: > <generated/ti-pm-asm-offsets.h> is only generated and included by > arch/arm/mach-omap2/, so it does not need to reside in the globally > visible include/generated/. > > I renamed it to arch/arm/mach-omap2/pm-asm-offsets.h since the prefix > 'ti-' is just redundant in mach-omap2/. > > 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 ti-pm-asm-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 ti-pm-asm-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 > ti-pm-asm-offsets.h. This is not nice from the build system point > of view. > > - If ti-pm-asm-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@socionext.com> > Tested-by: Keerthy <j-keerthy@ti.com> Applying into omap-for-v5.4/soc thanks. The commit is on top of v5.3-rc1 so it can be merged into other branches if needed after it's been sitting in Linux next for few days with no issues. Regards, Tony
diff --git a/arch/arm/mach-omap2/.gitignore b/arch/arm/mach-omap2/.gitignore new file mode 100644 index 000000000000..79a8d6ea7152 --- /dev/null +++ b/arch/arm/mach-omap2/.gitignore @@ -0,0 +1 @@ +pm-asm-offsets.h diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index 600650551621..21c6d4bca3c0 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile @@ -223,9 +223,10 @@ obj-y += omap_phy_internal.o obj-$(CONFIG_MACH_OMAP2_TUSB6010) += usb-tusb6010.o -include/generated/ti-pm-asm-offsets.h: arch/arm/mach-omap2/pm-asm-offsets.s FORCE +$(obj)/pm-asm-offsets.h: $(obj)/pm-asm-offsets.s FORCE $(call filechk,offsets,__TI_PM_ASM_OFFSETS_H__) -$(obj)/sleep33xx.o $(obj)/sleep43xx.o: include/generated/ti-pm-asm-offsets.h +$(obj)/sleep33xx.o $(obj)/sleep43xx.o: $(obj)/pm-asm-offsets.h targets += pm-asm-offsets.s +clean-files += pm-asm-offsets.h diff --git a/arch/arm/mach-omap2/sleep33xx.S b/arch/arm/mach-omap2/sleep33xx.S index 68fee339d3f1..dc221249bc22 100644 --- a/arch/arm/mach-omap2/sleep33xx.S +++ b/arch/arm/mach-omap2/sleep33xx.S @@ -6,7 +6,6 @@ * Dave Gerlach, Vaibhav Bedia */ -#include <generated/ti-pm-asm-offsets.h> #include <linux/linkage.h> #include <linux/platform_data/pm33xx.h> #include <linux/ti-emif-sram.h> @@ -15,6 +14,7 @@ #include "iomap.h" #include "cm33xx.h" +#include "pm-asm-offsets.h" #define AM33XX_CM_CLKCTRL_MODULESTATE_DISABLED 0x00030000 #define AM33XX_CM_CLKCTRL_MODULEMODE_DISABLE 0x0003 diff --git a/arch/arm/mach-omap2/sleep43xx.S b/arch/arm/mach-omap2/sleep43xx.S index c1f4e4852644..90d2907a2eb2 100644 --- a/arch/arm/mach-omap2/sleep43xx.S +++ b/arch/arm/mach-omap2/sleep43xx.S @@ -6,7 +6,6 @@ * Dave Gerlach, Vaibhav Bedia */ -#include <generated/ti-pm-asm-offsets.h> #include <linux/linkage.h> #include <linux/ti-emif-sram.h> #include <linux/platform_data/pm33xx.h> @@ -19,6 +18,7 @@ #include "iomap.h" #include "omap-secure.h" #include "omap44xx.h" +#include "pm-asm-offsets.h" #include "prm33xx.h" #include "prcm43xx.h"