Re: objcopy "text file busy" build failure with populated /usr/obj

From: Michael Butler <imb_at_protected-networks.net>
Date: Sun, 20 Sep 2020 13:55:07 -0400
On 9/20/20 10:58 AM, Mark Murray wrote:
> Hi *
> 
> I've been getting these build failures for a while (weeks/months). The machine is a MacchiatoBin DoubleShot (arm64, Quad core). with SATA disks and zfs filesystem. If I empty out /usr/obj, then the build works, but takes a few hours. If I do a no-clean build with /obj/obj populated with he contents of a previous build, and /usr/src with updated ("svn update") sources, then the below nearly always happens early in the rebuild. It is in "stage 4.4: building everything" that this happens. The build is parallel (-j8), and I have manually de-threaded the output.
> 
> The generated command-line from the logfile is:
> 
> cd /usr/src; _PARALLEL_SUBDIR_OK=1 MACHINE_ARCH=aarch64  MACHINE=arm64  CPUTYPE=cortex-a72 CC="/usr/local/bin/ccache cc -target aarch64-unknown-freebsd13.0 --sysroot=/usr/obj/usr/src/arm64.aarch64/tmp -B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin" CXX="/usr/local/bin/ccache c++  -target aarch64-unknown-freebsd13.0 --sysroot=/usr/obj/usr/src/arm64.aarch64/tmp -B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin"  CPP="cpp -target aarch64-unknown-freebsd13.0 --sysroot=/usr/obj/usr/src/arm64.aarch64/tmp -B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin"  AS="as" AR="ar" LD="ld" LLVM_LINK=""  NM=nm OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size" STRIPBIN="strip"  INSTALL="install -U"  PATH=/usr/obj/usr/src/arm64.aarch64/tmp/bin:/usr/obj/usr/src/arm64.aarch64/tmp/usr/sbin:/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/sbin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/libexec::/sbin:/bin:/usr/sbin:/usr/bin  SYSROOT=/usr/obj/usr/src/arm64.aarch64/tmp make  -f Makefile.inc1  BWPHASE=everything  DESTDIR=/usr/obj/usr/src/arm64.aarch64/tmp all
> 
> Anyone else seeing this?
> 
> objcopy --strip-debug --add-gnu-debuglink=objcopy.debug  objcopy.full objcopy
> objcopy: open objcopy failed: Text file busy
> --- all_subdir_usr.bin/objcopy ---
> *** [objcopy] Error code 1
> 
> make[4]: stopped in /usr/src/usr.bin/objcopy

Yes, although simply restarting the build seems to avoid the problem on 
the second attempt.

However, I'm building on a dual quad-core amd64 platform (8 cores total) 
so it's not just ARM being affected,

	imb


Received on Sun Sep 20 2020 - 15:55:17 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:25 UTC