mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2025-02-17 04:17:19 +00:00
build: install-dtb: fix race condition when copying dtb
Currently for at91 target, Build/install-dtb can be triggered concurrently for multiple different TARGET_FILESYSTEMS, cp command can fail when the target file is already open exclusively by other cp process [ -f /builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/at91sam9263ek-uImage -a -f /builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/root.ubifs+fs=-m_2048_-e_126KiB_-c_2048+pkg=68b329da ] [ -f /builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/at91sam9263ek-uImage -a -f /builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/root.ext4+pkg=68b329da ] cp -fpR /builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/linux-4.14.141/arch/arm/boot/dts/at91sam9263ek.dtb /builder/shared-workdir/build/bin/targets/at91/sam9x/openwrt-at91-sam9x-at91sam9263ek.dtb; cp -fpR /builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/linux-4.14.141/arch/arm/boot/dts/at91sam9263ek.dtb /builder/shared-workdir/build/bin/targets/at91/sam9x/openwrt-at91-sam9x-at91sam9263ek.dtb; cp: cannot create regular file '/builder/shared-workdir/build/bin/targets/at91/sam9x/openwrt-at91-sam9x-at91sam9263ek.dtb': File exists Makefile:87: recipe for target '/builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/tmp/openwrt-at91-sam9x-at91sam9263ek-ubifs-dtb' failed make[4]: *** [/builder/shared-workdir/build/build_dir/target-arm_arm926ej-s_musl_eabi/linux-at91_sam9x/tmp/openwrt-at91-sam9x-at91sam9263ek-ubifs-dtb] Error 1 Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
This commit is contained in:
parent
1cf2495d48
commit
a75801c89c
@ -136,10 +136,13 @@ define Build/append-dtb
|
|||||||
endef
|
endef
|
||||||
|
|
||||||
define Build/install-dtb
|
define Build/install-dtb
|
||||||
$(foreach dts,$(DEVICE_DTS), \
|
$(call locked, \
|
||||||
$(CP) \
|
$(foreach dts,$(DEVICE_DTS), \
|
||||||
$(DTS_DIR)/$(dts).dtb \
|
$(CP) \
|
||||||
$(BIN_DIR)/$(IMG_PREFIX)-$(dts).dtb; \
|
$(DTS_DIR)/$(dts).dtb \
|
||||||
|
$(BIN_DIR)/$(IMG_PREFIX)-$(dts).dtb; \
|
||||||
|
), \
|
||||||
|
install-dtb-$(IMG_PREFIX) \
|
||||||
)
|
)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user